home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Experimental BBS Explossion 3
/
Experimental BBS Explossion III.iso
/
comunic
/
fd211.zip
/
FD.DOC
< prev
next >
Wrap
Text File
|
1993-09-25
|
346KB
|
8,694 lines
FrontDoor 2.11 Shareware
User guide
For noncommercial use and distribution
To the memories of Catharina Frodin and Alva Gardlund.
And to Christian, Katja, and Igor Homrighausen.
Party on Fred, we miss you.
Table of contents
1 SHAREWARE VERSION LICENCE AGREEMENT - "FFHA184k" . . . . . . . 1
2 Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1 Hardware requirements . . . . . . . . . . . . . . . . . . 3
2.2 Software requirements . . . . . . . . . . . . . . . . . . 3
2.3 Additional equipment . . . . . . . . . . . . . . . . . . 3
2.4 BBS software . . . . . . . . . . . . . . . . . . . . . . 4
3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1 CONFIG.SYS . . . . . . . . . . . . . . . . . . . . . . . 4
3.2 AUTOEXEC.BAT . . . . . . . . . . . . . . . . . . . . . . 4
3.3 Directories . . . . . . . . . . . . . . . . . . . . . . . 4
3.4 Files . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4 Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.1 FD environment variable . . . . . . . . . . . . . . . . . 5
4.2 FD.SYS <> SETUP.FD . . . . . . . . . . . . . . . . . . . 5
4.3 Getting started . . . . . . . . . . . . . . . . . . . . . 5
4.4 Menus . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.4.1 File . . . . . . . . . . . . . . . . . . . . . . . 6
4.4.2 Global . . . . . . . . . . . . . . . . . . . . . . 6
4.4.4 Editor . . . . . . . . . . . . . . . . . . . . . 17
4.4.5 Terminal . . . . . . . . . . . . . . . . . . . . 20
4.4.6 Modem . . . . . . . . . . . . . . . . . . . . . . 24
4.4.7 Printer . . . . . . . . . . . . . . . . . . . . . 24
4.4.8 Manager . . . . . . . . . . . . . . . . . . . . . 24
Event Manager . . . . . . . . . . . . . . . . . . . . . 24
Folder Manager . . . . . . . . . . . . . . . . . . . . 24
Security . . . . . . . . . . . . . . . . . . . . . . . 27
Notes regarding protocols . . . . . . . . . . . . . 28
Request Manager . . . . . . . . . . . . . . . . . . 29
5 The nodelist and the nodelist compiler . . . . . . . . . . . 29
Zone . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Region . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Node . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Point . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.1 Hosts and hubs . . . . . . . . . . . . . . . . . . . . 30
5.2 Compiling a nodelist . . . . . . . . . . . . . . . . . 30
5.2.1 FDNODE.CTL . . . . . . . . . . . . . . . . . . . 30
POINTLIST . . . . . . . . . . . . . . . . . . . . . 30
PVTLIST . . . . . . . . . . . . . . . . . . . . . . 31
SWEPULSE . . . . . . . . . . . . . . . . . . . . . 32
PHONE . . . . . . . . . . . . . . . . . . . . . . . 32
USE ZONE . . . . . . . . . . . . . . . . . . . . . 32
DIAL . . . . . . . . . . . . . . . . . . . . . . . 32
COST . . . . . . . . . . . . . . . . . . . . . . . 34
5.3 Nodelist flags . . . . . . . . . . . . . . . . . . . . 34
5.4 Command line switches . . . . . . . . . . . . . . . . . 34
5.5 Points . . . . . . . . . . . . . . . . . . . . . . . . 35
5.5.1 Pointlist . . . . . . . . . . . . . . . . . . . . 35
5.5.2 FDNODE.CTL . . . . . . . . . . . . . . . . . . . 36
5.5.3 Treatment of points . . . . . . . . . . . . . . . 37
5.5.4 Remapping . . . . . . . . . . . . . . . . . . . . 37
5.5.5 POINTNET . . . . . . . . . . . . . . . . . . . . 37
5.6 Sharing the nodelist . . . . . . . . . . . . . . . . . 38
6 Modems and FOSSIL drivers . . . . . . . . . . . . . . . . . . 38
6.1 Basic configuration . . . . . . . . . . . . . . . . . . 38
Hardware . . . . . . . . . . . . . . . . . . . . . . . 38
Serial port . . . . . . . . . . . . . . . . . . . . 39
Locked port . . . . . . . . . . . . . . . . . . . . 39
Maximum baudrate . . . . . . . . . . . . . . . . . 39
Reset modem to connect speed . . . . . . . . . . . 39
Lower DTR when busy . . . . . . . . . . . . . . . . 39
Lower DTR to terminate call . . . . . . . . . . . . 39
Toggle DTR before dialing . . . . . . . . . . . . . 39
Carrier detect mask (CDMASK) . . . . . . . . . . . 40
Connect messages . . . . . . . . . . . . . . . . . . . 40
Status messages . . . . . . . . . . . . . . . . . . . . 40
Custom message . . . . . . . . . . . . . . . . . . . . 40
Command strings . . . . . . . . . . . . . . . . . . . . 40
Escape code . . . . . . . . . . . . . . . . . . . . 40
Return on-line . . . . . . . . . . . . . . . . . . 40
Onhook . . . . . . . . . . . . . . . . . . . . . . 40
Offhook . . . . . . . . . . . . . . . . . . . . . . 41
Dial . . . . . . . . . . . . . . . . . . . . . . . 41
Suffix . . . . . . . . . . . . . . . . . . . . . . 41
Delay . . . . . . . . . . . . . . . . . . . . . . . 41
Init-1..Init-3 . . . . . . . . . . . . . . . . . . 41
Down . . . . . . . . . . . . . . . . . . . . . . . 41
Reset . . . . . . . . . . . . . . . . . . . . . . . 41
Answer control . . . . . . . . . . . . . . . . . . . . 42
Manual answer . . . . . . . . . . . . . . . . . . . 42
Fax . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.2 Advanced configuration . . . . . . . . . . . . . . . . 42
6.3 The Modem Manager . . . . . . . . . . . . . . . . . 43
An example, the HST/DS . . . . . . . . . . . . . . . . 43
6.4 FOSSIL drivers . . . . . . . . . . . . . . . . . . . . 44
BNU . . . . . . . . . . . . . . . . . . . . . . . . . . 44
X00 . . . . . . . . . . . . . . . . . . . . . . . . . . 45
OS/2 2.x . . . . . . . . . . . . . . . . . . . . . . . 45
7 Events . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.1 The Event Manager . . . . . . . . . . . . . . . . . . . 46
7.1.1 External event behavior . . . . . . . . . . . . . 48
7.1.2 Mail event behavior . . . . . . . . . . . . . . . 48
7.1.3 The @ event . . . . . . . . . . . . . . . . . . . 50
7.1.4 Overlapping events . . . . . . . . . . . . . . . 51
8 Mailer . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
8.1 Menus . . . . . . . . . . . . . . . . . . . . . . . . . 51
8.1.1 Programs <Alt-P> . . . . . . . . . . . . . . 51
8.1.2 Utilities <Alt-U> . . . . . . . . . . . . . . 52
8.1.3 Mail <Alt-M> . . . . . . . . . . . . . . 53
8.1.4 Your profile . . . . . . . . . . . . . . . . . . 54
8.2 Mail queue <Alt-B> . . . . . . . . . . . . . . . . 54
8.3 Call progress . . . . . . . . . . . . . . . . . . . . . 56
8.4 Semaphore indicators . . . . . . . . . . . . . . . . . 56
8.5 Undialable . . . . . . . . . . . . . . . . . . . . . . 56
9 Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
9.1 Main <Alt-M> . . . . . . . . . . . . . . . . 57
9.2 Edit <Alt-E> . . . . . . . . . . . . . . . . 58
9.2.1 Edit mode <Alt-T> . . . . . . . . . . . . . . . . 59
9.2.2 Toggle <Ctrl-F2> . . . . . . . . . . . . . . . 60
9.3 Utilities <Alt-U> . . . . . . . . . . . . . . . . 60
9.4 Purge <Alt-P> . . . . . . . . . . . . . . . . 62
9.6 Entering new messages . . . . . . . . . . . . . . . . . 63
9.7 Message survey <Alt-F9> . . . . . . . . . . . . . . . 63
9.7.1 Main menu . . . . . . . . . . . . . . . . . . . . 63
9.7.2 Continuous tagging . . . . . . . . . . . . . . . 64
9.7.3 Range select <F4> . . . . . . . . . . . . . . . 64
9.8 Keyboard macros . . . . . . . . . . . . . . . . . . . . 65
Examples . . . . . . . . . . . . . . . . . . . . . . . 66
9.9 Carbon copies (CC) . . . . . . . . . . . . . . . . . . 66
9.9.1 Hidden CCs . . . . . . . . . . . . . . . . . . . 67
9.9.2 Using files as input to CCs . . . . . . . . . . . 67
9.9.3 Address expansion . . . . . . . . . . . . . . . . 67
9.10 Blind Carbon Copies (BCC) . . . . . . . . . . . . . . 67
9.11 Crossposting (XC) . . . . . . . . . . . . . . . . . . 68
10 Terminal . . . . . . . . . . . . . . . . . . . . . . . . . . 68
10.1 Menus . . . . . . . . . . . . . . . . . . . . . . . . 69
10.1.1 File <Alt-F> . . . . . . . . . . . . . . 69
10.1.2 Line settings <Alt-L> . . . . . . . . . . . . 70
10.1.3 Session <Alt-S> . . . . . . . . . . . . . . 71
10.1.4 Options <Alt-O> . . . . . . . . . . . . . . 73
10.2 Keyboard macros . . . . . . . . . . . . . . . . . . . 73
10.3 Raw mode . . . . . . . . . . . . . . . . . . . . . . . 73
10.4 Keypad modes . . . . . . . . . . . . . . . . . . . . . 74
10.5 PC keyboards . . . . . . . . . . . . . . . . . . . . . 74
10.6 Phone directory <Alt-P> . . . . . . . . . . . . . . 74
10.6.1 Queue status . . . . . . . . . . . . . . . . . . 75
10.6.2 Adding/changing entries . . . . . . . . . . . . 75
10.7 Inactivity timer . . . . . . . . . . . . . . . . . . . 75
10.8 File transfers . . . . . . . . . . . . . . . . . . . . 76
10.9 On-line timer . . . . . . . . . . . . . . . . . . . . 76
11 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . 76
11.1 Destination of messages . . . . . . . . . . . . . . . 76
11.1.1 Name lookups . . . . . . . . . . . . . . . . . . 76
11.1.2 Address browsing . . . . . . . . . . . . . . . . 76
11.1.3 Address macros (NAMES.FD) . . . . . . . . . . . 77
12 File Requests . . . . . . . . . . . . . . . . . . . . . . . 78
12.1 Outbound Requests . . . . . . . . . . . . . . . . . . 78
12.2 Requesting files with a password . . . . . . . . . . . 79
12.3 Update Requests . . . . . . . . . . . . . . . . . . . 79
12.4 Inbound Requests . . . . . . . . . . . . . . . . . . . 79
12.4.1 Request modes . . . . . . . . . . . . . . . . . 79
Anyone can request . . . . . . . . . . . . . . . . 79
Systems in nodelist can request . . . . . . . . . . 79
No requests . . . . . . . . . . . . . . . . . . . . 79
12.4.2 Directory listings . . . . . . . . . . . . . . . 80
12.4.3 Alias listings . . . . . . . . . . . . . . . . . 80
12.4.4 Response message . . . . . . . . . . . . . . . . 80
12.4.5 Limiting Requests . . . . . . . . . . . . . . . 81
Maximum match . . . . . . . . . . . . . . . . . . . 81
Maximum time . . . . . . . . . . . . . . . . . . . 81
Maximum size . . . . . . . . . . . . . . . . . . . 81
Minimum speed (BPS) . . . . . . . . . . . . . . . . 81
12.4.6 Limited hours . . . . . . . . . . . . . . . . . 81
Limited . . . . . . . . . . . . . . . . . . . . . . 81
Start . . . . . . . . . . . . . . . . . . . . . . . 82
End . . . . . . . . . . . . . . . . . . . . . . . . 82
Days . . . . . . . . . . . . . . . . . . . . . . . . . 82
12.4.7 Event restrictions . . . . . . . . . . . . . . . 82
12.4.8 Protecting files and directories . . . . . . . . 82
12.4.9 Request processor . . . . . . . . . . . . . . . 83
13 Swapping . . . . . . . . . . . . . . . . . . . . . . . . . . 83
13.1 Complete path specifications . . . . . . . . . . . . . 84
13.2 Loading programs in a DOS shell . . . . . . . . . . . 84
14 CRT environments . . . . . . . . . . . . . . . . . . . . . . 84
15 Message Status Bits . . . . . . . . . . . . . . . . . . . . 84
Private . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Crash . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Hold . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
File . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
File request . . . . . . . . . . . . . . . . . . . . . . . 85
Update request . . . . . . . . . . . . . . . . . . . . . . 85
Kill/sent . . . . . . . . . . . . . . . . . . . . . . . . . 85
Trunc/sent . . . . . . . . . . . . . . . . . . . . . . . . 85
Delete/sent . . . . . . . . . . . . . . . . . . . . . . . . 86
Direct . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Immediate mail . . . . . . . . . . . . . . . . . . . . . . 86
Lock . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Sent . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
No status . . . . . . . . . . . . . . . . . . . . . . . . . 86
16 Mail routing . . . . . . . . . . . . . . . . . . . . . . . . 86
16.1 Default routing . . . . . . . . . . . . . . . . . . . 87
16.2 Message status . . . . . . . . . . . . . . . . . . . . 87
16.3 Host/Hub/Boss routing . . . . . . . . . . . . . . . . 88
16.4 Qualifying systems . . . . . . . . . . . . . . . . . . 88
16.5 Route commands . . . . . . . . . . . . . . . . . . . . 89
16.6 LIST specifications . . . . . . . . . . . . . . . . . 91
16.7 Using nodelist flags . . . . . . . . . . . . . . . . . 92
16.8 File routing/forwarding . . . . . . . . . . . . . . . 92
16.9 Message forwarding . . . . . . . . . . . . . . . . . . 92
16.10 Multiple zones . . . . . . . . . . . . . . . . . . . 92
16.11 Examples . . . . . . . . . . . . . . . . . . . . . . 93
16.12 Dynamic packing . . . . . . . . . . . . . . . . . . . 94
16.13 Regarding points . . . . . . . . . . . . . . . . . . 94
16.14 Order of evaluation . . . . . . . . . . . . . . . . . 94
16.15 TARGET vs. qualification . . . . . . . . . . . . . . 95
16.16 Restrictions . . . . . . . . . . . . . . . . . . . . 95
16.17 Macros . . . . . . . . . . . . . . . . . . . . . . . 95
MYZONE . . . . . . . . . . . . . . . . . . . . . . . . 95
MYNET . . . . . . . . . . . . . . . . . . . . . . . . . 95
MYPOINTS . . . . . . . . . . . . . . . . . . . . . . . 95
16.18 Supported nodelist flags . . . . . . . . . . . . . . 95
17 EMSI and IEMSI . . . . . . . . . . . . . . . . . . . . . . . 96
17.1 Passwords . . . . . . . . . . . . . . . . . . . . . . 96
17.2 Mail . . . . . . . . . . . . . . . . . . . . . . . . . 96
17.3 IEMSI . . . . . . . . . . . . . . . . . . . . . . . . 96
18 Script language . . . . . . . . . . . . . . . . . . . . . . 97
18.1 What can I do with it? . . . . . . . . . . . . . . . . 97
18.2 Commands . . . . . . . . . . . . . . . . . . . . . . . 97
18.3 Labels . . . . . . . . . . . . . . . . . . . . . . . . 102
18.4 Node block . . . . . . . . . . . . . . . . . . . . . . 102
18.5 PC Pursuit . . . . . . . . . . . . . . . . . . . . . . 102
18.6 How do I update PCP.DAT? . . . . . . . . . . . . . . . 103
18.7 MNEMONICS . . . . . . . . . . . . . . . . . . . . . . 103
19 FDSERVER . . . . . . . . . . . . . . . . . . . . . . . . . . 103
19.1 What is a FDSERVER request? . . . . . . . . . . . . . 104
19.2 Request message . . . . . . . . . . . . . . . . . . . 104
19.2.1 Internal commands . . . . . . . . . . . . . . . 104
19.3 Using it . . . . . . . . . . . . . . . . . . . . . . . 105
19.4 Keeping calls to a minimum . . . . . . . . . . . . . . 105
19.5 Security . . . . . . . . . . . . . . . . . . . . . . . 106
20 Service requests . . . . . . . . . . . . . . . . . . . . . . 106
20.1 Service requests vs FDSERVER . . . . . . . . . . . . . 106
20.2 Setting up . . . . . . . . . . . . . . . . . . . . . . 106
20.3 ^ - + ? . . . . . . . . . . . . . . . . . . . . . . . 107
20.4 Security . . . . . . . . . . . . . . . . . . . . . . . 107
20.5 A word of wisdom . . . . . . . . . . . . . . . . . . . 107
21 Global command-line switches . . . . . . . . . . . . . . . . 108
21.1 A word of wisdom . . . . . . . . . . . . . . . . . . . 112
22 Environment variables . . . . . . . . . . . . . . . . . . . 113
22.1 FDOPT . . . . . . . . . . . . . . . . . . . . . . . . 113
22.2 FDSWAP . . . . . . . . . . . . . . . . . . . . . . . . 113
22.3 POINTNET . . . . . . . . . . . . . . . . . . . . . . . 113
22.4 FMOVR and FDOVR . . . . . . . . . . . . . . . . . . . 113
22.5 TZUTC . . . . . . . . . . . . . . . . . . . . . . . . 113
23 Semaphore files . . . . . . . . . . . . . . . . . . . . . . 114
24 Batch files . . . . . . . . . . . . . . . . . . . . . . . . 117
24.1 Errorlevels . . . . . . . . . . . . . . . . . . . . . 117
24.2 Categories . . . . . . . . . . . . . . . . . . . . . . 117
24.3 Loading BBS software . . . . . . . . . . . . . . . . . 118
24.4 Different labels . . . . . . . . . . . . . . . . . . . 118
24.5 Same label . . . . . . . . . . . . . . . . . . . . . . 119
24.6 DOBBS.BAT . . . . . . . . . . . . . . . . . . . . . . 120
24.7 EXEBBS.BAT . . . . . . . . . . . . . . . . . . . . . . 120
24.8 Flow (batch files) . . . . . . . . . . . . . . . . . . 121
25 Multi-tasking . . . . . . . . . . . . . . . . . . . . . . . 122
25.1 NS16550 . . . . . . . . . . . . . . . . . . . . . . . 122
25.2 DESQview . . . . . . . . . . . . . . . . . . . . . . . 122
25.3 DoubleDOS . . . . . . . . . . . . . . . . . . . . . . 123
25.4 Multilink . . . . . . . . . . . . . . . . . . . . . . 124
26 Converting from other mail systems . . . . . . . . . . . . . 124
27 Help systems . . . . . . . . . . . . . . . . . . . . . . . . 124
28 Sample (PCP) script . . . . . . . . . . . . . . . . . . . . 125
29 Commercial inquiries . . . . . . . . . . . . . . . . . . . . 127
30 Developer notes . . . . . . . . . . . . . . . . . . . . . . 128
31 Technical specifications . . . . . . . . . . . . . . . . . . 128
32 Credits . . . . . . . . . . . . . . . . . . . . . . . . . . 128
1 SHAREWARE VERSION LICENCE AGREEMENT - "FFHA184k"
1. This is a licence agreement between you, the end user, and
Joaquim Homrighausen. The FrontDoor 2.11 Shareware software
and information attached hereto, hereafter "FD", is the
property of Joaquim Homrighausen. Read the terms and
conditions of this licence agreement carefully before using
the software. If you for any reason, whatsoever, cannot
accept the conditions in this agreement, you are not
permitted to use FD.
2. You acknowledge and agree that FD is a proprietary product of
Joaquim Homrighausen, protected by applicable copyright laws
and international treaty provisions. You further acknowledge
and agree that all rights, title, and interest in and to FD
are and shall remain with Joaquim Homrighausen.
3. FD may be used for a period of thirty (30) days on a trial
basis to allow you to determine its suitability for your
particular application. After this period you MUST register
each copy of FD that you run simultaneously. Site and Group
registrations are available, and are dealt with on a case by
case basis.
4. Registration entitles you to use FD and any future versions
of FD for as long as you wish, subject to any special
licensing conditions and/or applicable upgrade fees attached
to future versions.
5. In the event that you are in violation of this licence
agreement, you agree and accept that Joaquim Homrighausen may
cancel your registration and any rights to use FD that you
may have. In the case of a dispute over the licence
agreement, you further agree and accept to fully reimburse
Joaquim Homrighausen for legal and other expenses resulting
from the dispute.
6. FD is provided "as is", without warranty of any kind or
fitness for a particular purpose, either expressed or
implied, all of are hereby explicitly disclaimed. Joaquim
Homrighausen only guarantees that FrontDoor will occupy disk
space.
Joaquim Homrighausen's liability resulting from your use or
inability to use FD is limited to the amount that the
affected party has paid for it, or in the event that FD was
registered with a third party for payment to Joaquim
Homrighausen, liability is limited to the amount that was
received by Joaquim Homrighausen from that third party.
7. Neither Joaquim Homrighausen nor any of his employees,
agents, or other representatives are in any way obligated to
provide future versions of, or support for, FD.
1
8. You may freely distribute and copy FD provided that no fee is
charged and the FD distribution archive contains unmodified
copies of the original files as produced by Joaquim
Homrighausen. Pay Bulletin Board Systems may, however, charge
their normal fee provided that no additional charge for FD is
levied. No part of FD may be modified, altered, reverse
engineered, sold, or distributed in any form whatsoever which
would involve some sort of trade without prior written
permission from Joaquim Homrighausen.
9. FD may not be used in any unlawful or illegal manner.
10. FD may only be used and registered by physical persons for
use on equipment, including but not limited to telephone
lines, electricity, hardware, and software, maintained and
operated 100% by means of taxed personal income. FD may not
be used to provide commercial services.
All Joaquim Homrighausen products are trademarks or
registered trademarks of Joaquim Homrighausen. Other brand
and product names are trademarks or registered trademarks of
their respective holders.
Copyright 1986-1993 Joaquim Homrighausen; All rights reserved.
September 25, 1993
2
2 Preface
<C> as used in FrontDoor indicates that the feature is only available
in the commercial version; <+> indicates that the feature is only
available in the registered shareware version.
Welcome to FrontDoor, the complete e-mail package. It is probably
safe to say that an e-mail package, such as FrontDoor, is one of the
most complex types of applications around. This manual is very
straight forward and may seem hard to understand at first glance. If
you get lost, or cannot understand something, go back and read the
section you are having problems with, carefully.
FrontDoor has been tested on more than four thousand systems for over
six years. It will run under MS or PC DOS versions 3.1 and above;
including OS/2 1.3, 2.0, and 2.1 DOS Mode. It runs under most LAN
software; including Novell and LANtastic. It also runs under
PC-MOS/386, VM/386, Windows, Windows NT, and in other multi-tasking
environments such as DESQview.
For technical specifications, see "Technical specifications".
Although FrontDoor will run on most machines, there are a few
restrictions and requirements.
2.1 Hardware requirements
o An IBM PC, AT, i386, i486, PS/2 or 100% BIOS compatible.
o A hard disk with at least 1 MB available diskspace.
o An asynchronous modem capable of sending alphanumeric
messages such as CONNECT 2400.
o A DTE interface (computer <> modem) that supports CTS/RTS
handshaking (most cables/internal modems do).
o A monochrome or color monitor.
o 384 KB of system memory.
2.2 Software requirements
o MS or PC DOS 3.10 or above.
o A FOSSIL driver such as X00 or BNU.
2.3 Additional equipment
FrontDoor can take advantage of, but does not require, the
following:
o EMS memory for overlays and EMS/XMS memory for program
image swapping.
o EGA/VGA extended screen modes such as 80x43/50 and
132x28.
o AT-style (extended) keyboard.
3
2.4 BBS software
FrontDoor can be used as a front-end to many popular bulletin
boards including TUBBS, PC Board, RemoteAccess, Maximus-CBCS,
TCL, TPBoard, QuickBBS, SuperBBS, Phoenix RCS, Fido, Opus-CBCS,
and WildCat!.
3 Installation
Several files are included in the distribution archive. This manual
will walk you through the installation and configuration of the
system. All path names and directories suggested here are not
required. You can change them as you wish, but it is suggested that
you use the examples shown for a start and then move on to change
things as you become more familiar with the software. In the example,
it is assumed that you are about to install FrontDoor on your C
drive.
3.1 CONFIG.SYS
FrontDoor needs to have a few extra file handles allocated to
keep some files open. Your CONFIG.SYS file should contain
FILES=25 (or higher). If you do not know what handles means, that
is okay, as long as you have the FILES=25 statement in your
CONFIG.SYS file. If you are using multi-tasking software, your
FILES= setting must usually be set to something higher than 25.
You should also have BUFFERS=30 (or higher) in your CONFIG.SYS
file to improve DOS' buffer performance. If you are using a disk
cache, you should have BUFFERS=3 or something close to that.
3.2 AUTOEXEC.BAT
Add SET FD=C:\FD to your AUTOEXEC.BAT file. This will make sure
FrontDoor can find all its system files. You may NOT have spaces
between FD and =.
3.3 Directories
From your root directory (C:\) create a directory called FD. This
is the main (ROOT) directory for FrontDoor. Change the active
directory to FD. Create the following directories:
NODELIST
MAIL
PACKETS
FILES
3.4 Files
Copy FD.EXE, FD.OVR, FM.EXE, FM.OVR, FDNC.EXE and FDSETUP.EXE to
C:\FD. The program files are now installed.
4
3.5 FidoNet
If you are joining (or already an active in) FidoNet, you should
obtain a copy of a recent FidoNet nodelist. The FidoNet nodelist
can be found on many FidoNet systems under the name NODELIST
followed by an extension.
Place the uncompressed nodelist ASCII file in the C:\FD\NODELIST
directory. The uncompressed nodelist is usually called
NODELIST.nnn where nnn is three digits.
4 Setup
The Setup program, FDSETUP hereafter, is used to configure FrontDoor.
Most functions and behavior of the Editor (FM), Mailer (FD), and
Terminal are controlled from FDSETUP. When you start FDSETUP, it
searches for the system file, SETUP.FD, in the directory pointed to
by the FD environment variable.
If the FD variable has not been set, FDSETUP searches the current
directory for SETUP.FD. If it cannot open SETUP.FD, it will ask you
if you want to create a new file or abort.
4.1 FD environment variable
The FD environment variable specifies where FDSETUP should search
for SETUP.FD. If the FD environment variable is not set, FDSETUP
will search the current directory for SETUP.FD. It is recommended
that you add SET FD=<path> to your AUTOEXEC.BAT or other startup
file. This allows FDSETUP, and the other FrontDoor programs, to
locate SETUP.FD without having to be in the same directory.
E.g. SET FD=C:\FD
4.2 FD.SYS <> SETUP.FD
The system file used by some earlier (1.99c and 2.00) versions of
FrontDoor is called FD.SYS. Some FrontDoor specific utilities
(TosScan 1.00 for example) and other programs may therefore
require that you maintain a copy of FD.SYS. If you are using such
software, make sure you copy SETUP.FD to FD.SYS in the FrontDoor
root directory.
4.3 Getting started
To create a new SETUP.FD file, make the FrontDoor root directory
the active directory by using the DOS command CD; type FDSETUP
and press Enter. If you have set the FD variable, you do not have
to change the active directory before invoking FDSETUP.
FDSETUP will display a message saying something like "SETUP.FD,
path or file not found". Press <Space> to create a new file.
5
4.4 Menus
There are eight top-level (pull-down) menus. Each function and
menu of FDSETUP will now be described.
4.4.1 File
Write SETUP.FD
Forces FDSETUP to write the configuration file, SETUP.FD, to
disk. This allows you to commit any changes you have made to
your configuration without leaving FDSETUP.
Shell to DOS
Invokes a temporary DOS shell. Type EXIT and press <Enter> to
return to FDSETUP. You can invoke a temporary DOS shell in
FDSETUP by pressing <Alt-Z> in the middle of input fields,
pull-down menus, selection fields, etc.
Exit
Returns you to DOS or the Mailer, depending on how FDSETUP
was invoked. If you made any changes to your configuration,
you will be asked if you want to make your changes permanent
or abandon them. You can also exit FDSETUP by pressing <Esc>
at any of the top-level menus.
Enter your code
Allows you to enter the registration code required to
activate some registered-only features. Once you have
succesfully entered your registration code, FDSETUP will not
allow you to enter it again.
4.4.2 Global
Address
Address
Defines your network address and alternate network
addresses, or "also-known-as" (AKA). You must define at
least one network address (the first slot).
Site info
Defines your system's name, geographical location,
telephone number, maximum speed, nodelist flags, and the
name of your BBS software (if any).
The telephone number should be specified in international
format, eg. +352 316702 or "-Unpublished-" if you do not
wish to reveal this information to other systems.
6
Domains
Specifies the name of a network zone. This should be
"fidonet" for all FidoNet Zones (currently 1 through 6).
At the moment, this is only used for the generation of
the ^AMSGID: kludge line and for inserting "^aVia"
information in messages forwarded by the Mailer (FD).
AKA..
Allows you to specify which AKA to use when corresponding
with certain zones and nets within zones.
I.e. if you are writing a message to someone in zone 2
and you have specified that you wish to use your 2:270/17
AKA for this, the Editor will automatically use 2:270/17
regardless of your current AKA setting.
This allows you to easily participate in multiple
networks.
Filenames
System
Where the FrontDoor system files are stored. This should
NOT be a RAM disk. If you have followed the installation
instructions above, this should be C:\FD.
NetMail
Where NetMail messages are stored, i.e. the NetMail
folder. The Mailer unpacks received messages to this
directory. This should NOT be a RAM disk. If you have
followed the installation instructions above, this should
be C:\FD\MAIL.
Files
Where inbound (received) files are stored. This should
NOT be a RAM disk. If you have followed the installation
instructions above, this should be C:\FD\FILES.
SecFiles
Identical to Files above except that it is only used to
store files received during a secure (password protected)
mail session. If SecFiles isn't specified, the Mailer
will use the path specified for Files.
Packets
Where the Mailer stores its temporary mail packets. They
are created every time the Mailer runs a mail event and
are removed when the event ends.
7
By putting the Packet directory on a RAM disk, you can
greatly improve the speed of packing and scanning
outbound mail.
It is recommended that you use a sub-directory on your
RAM disk since the number of directory entries in the
root directory of a drive is usually limited to a fairly
low number.
If you have followed the installation instructions above,
this should be C:\FD\PACKETS.
Log file
The log file. This is a complete filename, e.g.
C:\FD\FD.LOG. This is used by the Mailer (and can be used
by the Terminal in the registered version) to log its
activies such as received and sent files, call progress,
etc. You should NOT use a RAM disk for the log file as it
will disappear if the system reboots.
Banner
The contents of this file is displayed to human
(interactive) callers before the Mailer passes control to
your batch file to invoke the BBS software. This file is
not used if you are running in mail-only mode. You should
NOT use a RAM disk for the banner file.
Nodelist
Where the nodelist database is stored. The Nodelist
Compiler (FDNC) expects to find its control file(s) here.
The Mailer and Editor expects to find the compiled
nodelist database here. If this directory is not
specified, FrontDoor will use the SYSTEM directory
instead. The nodelist directory should NOT be located on
a RAM disk.
If you have followed the installation instructions above,
this should be C:\FD\NODELIST.
No BBS
This file is displayed to human callers if the Mailer
rejects their call. I.e. if you are running in mail-only
mode or if a mail event prevents interactive access to
your BBS.
MSG Base
Where the Editor expects to find the Hudson Message Base
files (MSGHDR.BBS, MSGTXT.BBS, MSGINFO.BBS, MSGIDX.BBS,
MSGTOIDX.BBS and LASTREAD.BBS). If you do not have any
folders with MsgBase status, you do not have to specify
this.
8
Swapping
If you enable swapping to disk or there is not sufficient
XMS/EMS memory available. The Mailer and the Editor will
use this directory to store its swap file.
This setting can be overridden by the FDSWAP environment
variable (see "Environment variables").
<C> Semaphore
Where the Mailer and Editor creates and looks for the
various semaphore files (see "Semaphore files"). This
allows you to configure a multi-line and/or multi-user
system with different configurations to use the same
semaphore directory.
<C> MailExit
If specified, this file is created by the Mailer when it
has received mail and would normally have terminated with
an errorlevel indicating that mail has been received.
In a multi-line and/or multi-tasking environment, this
could be used to automatically invoke mail processing
software and run it in the background while the Mailer
continues its operation.
General
Your country code
Your country code. Eg. USA=1, Sweden=46, Luxembourg=352.
This is used for telephone number translations. This is
related to the COUNTRY= command used in CONFIG.SYS. It
does not, however, have to be the same as your COUNTRY=
setting. FDSETUP's country code setting should always be
your real country code.
Screen flickers
FrontDoor attempts to detect if you have a CGA card that
causes flicker if software performs direct memory access
(DMA). The default for this setting is NO and you should
leave it alone unless you are seeing flicker on your
screen when you use the Mailer, Editor, and/or the
Terminal.
Use "fastkey"
Forces the Mailer, Editor, and the Terminal to speed up
the typematic rate of your keyboard. This is only valid
for machines with an AT- or compatible BIOS installed.
If you are using other keyboard speed-up utilities, leave
this to NO; otherwise, FrontDoor will restore the
typematic rate to the default (slow) when they terminate.
9
Screen blanking
Prevents screen images from "burning in". If you are
using a monochrome monitor, data that is displayed often
in the same location on your screen can "burn in" and
leave ugly marks. Color monitors usually do not have this
problem.
Since the Mailer is active more than 80% of the day on
most systems, it may be wise to enable this option to
avoid "burn ins" of the Mailer's main display.
Blackout timer
Specifies how many seconds of inactivity should pass
before the screen is blanked. This option is only used if
screen blanking (previous page) has been enabled. You can
"light up" a blanked screen by pressing a key. The screen
will also be lit when the Mailer places outgoing calls
and when incoming calls are answered.
Extended keyboard
Specifies which type of keyboard you have (101/102 or
83/84). FDSETUP will attempt to "guess" which type of
keyboard you have, but some BIOS flavors does not
properly indicate the type. This allows you to override
what FDSETUP detects.
Force 24-hour fmt
Allows you to force the Mailer and the Editor to display
the time in 24-hour format even if you are located in a
country that uses the 12-hour format, such as the USA.
Monochrome mode
Forces FDSETUP to assume monochrome color mode (as if you
would have specified FDSETUP -m on the DOS command-line).
Users
Allows you to specify user names and access levels. The
default name of the first user is System Operator. You should
change this to your own name.
<+> There are three different access levels. Supervisor,
Administrator and User.
A user with Supervisor access can override any restrictions
on folders and messages. He/she can also change all settings
regardless of passwords. You should only have one user with
Supervisor access, but FDSETUP will allow you to define more
than one. At least one user with Supervisor access MUST exist
and is required to add any additional users.
10
A user with Administrator access cannot override any
restrictions on folders and messages. He/she has to enter
passwords for protected items before they can be changed.
A user with User access cannot override any restrictions on
folders and messages. The only setting he/she can change in
FDSETUP is his/her own password.
>>> The unregistered shareware version only allows you to
define one user and forces the access level to that of
Supervisor.
4.4.3 Mailer
Miscellaneous
<+> Mail from unlisted systems
Defines whether or not the Mailer should accept incoming
calls from systems not listed in your nodelist database.
If this option is disabled (set to NO) and an unlisted
system calls in, the Mailer will terminate the call
immediately.
<C> Mail from "unprotected" systems
Defines whether or not the Mailer should accept incoming
calls from systems for which you do not have a session
level password defined. If this option is disabled (set
to NO) and an unprotected system calls in, the Mailer
will terminate the call immediately.
<+> Mail from unlisted points
The Mailer will by default accept calls from points of
other systems whether or not they are present in your
nodelist database; provided the point system's boss
passes the required criteria.
You can, however specify that you do not want the Mailer
to accept calls from points that cannot be found in the
nodelist database. If this option is disabled (set to NO)
and a point for which you have no entry in your nodelist
database calls in, the Mailer will terminate the call
immediately.
Kill empty received messages
Specifies that you want the Mailer to kill empty messages
(messages with no text in its body) when they are
unpacked from received mail packets.
11
Terminal only (no mail)
If enabled, the Mailer will invoke the Terminal as soon
as it is loaded. This setting can be overridden with the
-M command line switch.
Mail only (no BBS)
If enabled, the Mailer will not accept human callers
under any circumstances. Use this option if you do not
have a BBS or similar software running "below" the
Mailer.
Present all AKAs to remote system
If you have more than one AKA address, the Mailer will by
default attempt to pickup mail destined for all your
addresses during a mail session.
This can be disabled so that only one address is
presented to the remote system. Which address is actually
presented is determined by the AKA matching table
(described above).
Trigger exit upon receipt of netmail
The Mailer will by default only trigger (set) the exit
flag when compressed (following the ARCmail 0.60
standard) mail is received. If this option is enabled,
the exit flag will be triggered (set) when NetMail
packets (files ending with the extension .PKT) have been
received. Whether or not the Mailer will actually exit is
controlled by event behaviors (see "Events") and the mail
exit errorlevels.
Trigger exit upon receipt of ANY file
Similar to the above option, but will trigger exit as
long as any (file) data has been received.
Print received messages
<C> If enabled, the Mailer will print messages unpacked from
received mail packets.
Busy retries
Defines the maximum number of times the Mailer will
attempt to call a system during an event (see "Events")
if the system is busy or does not answer on the first
call. See the section about the Mailer for further
details regarding call progress.
12
Resend retries
Defines the maximum number of times the Mailer will
attempt to transfer mail to a system during an event if
the first attempt fails. See the section about the Mailer
for further details regarding call progress.
Retry delay
Defines the minimum number of seconds the Mailer will
wait between outgoing calls. This is used in conjunction
with a random timer to avoid two Mailers calling each
other at the same time (and thus causing both telephone
lines to be engaged).
Delay before first call
The Mailer will by default attempt to place the first
outgoing call as soon as possible. If this option is
enabled, it will delay the first call.
Days to keep mail history
Number of days to retain entries in the inbound/outbound
history files. The Mailer removes all entries older than
this value from the history files every morning (at first
opportunity after midnight).
Seconds before passing to BBS
Defines the number of seconds the Mailer will wait before
assuming a human caller. Unless the Mailer receives two
consecutive escape (ASCII 27) characters, it will attempt
to establish a mail session for the amount specified
here. The minimum and default value is 11 seconds. The
maximum value is 60 seconds.
Minimum undialable cost
The minimum cost of a call for a system to be processed
by the undialable handler. The undialable handler is
discussed in a separate section.
<C> Honor Return Receipt Requests (RRQ)
Specifies whether or not the Mailer should generate a
Return Receipt for received messages with the RRQ flag
set. The RRQ flag is discussed in the Editor section.
Log
Defines the various level of logging. All messages will
appear on the screen, the log options defines which of them
ends up in the log file.
13
File requests
Controls how the Mailer treats inbound File and Update
Requests. A separate section explains File and Update
Requests in detail.
<+> FDServer
If no password is specified in FDSETUP, the FDSERVER function
is inactive (disabled). The FDSERVER function is described in
a separate section.
External mail
When the Mailer processes an incoming call, all received
characters are processed for a possible match with any of the
external mail "wake-up" sequences (strings), and if a match
is made, the Mailer exits with the specified errorlevel of
the matching string.
This allows you to run alternate mail handlers behind the
Mailer, such as UFGATE and Waffle to process INTERNET/UUCP
mail. Note that the call is not terminated when using the
external mail interface, the Mailer simply exits with the
specified errorlevel. This option is NOT intended for
EchoMail processors, etc.
To enter characters with an ASCII code below 32 (Space), hold
down the <Alt> key, enter the ASCII code on the numerical
keypad and release the <Alt> key.
Display
Mail waiting flashing
When there is new mail waiting, the text "Mail" will
flash on the Mailer screen. The flashing can be disabled
with this option.
Display clock
Specifies whether or not you want the current date and
time displayed in the top right corner of the Mailer
screen.
Display timestamp
Specifies whether or not you want the Mailer to display
the time to the left of each line displayed in the main
activity window. This setting does not affect what is
being written to the log file.
Screen size
25
25 line mode.
14
43/50
43/50 line mode. Only available for systems with EGA
and VGA cards.
Auto
Specifies that the Mailer should attempt to
automatically adapt to whatever the current screen
size is when it is started.
This also means that the Mailer will not attempt to
reset the screen mode when it is terminated.
<+> Custom
Allows you to specify computer register values to
send to the INT 10h (Video BIOS) to set and reset the
screen.
Colors
Allows you to choose between the default monochrome (black
and white) and the default color sets. You can also choose to
customize the colors to your own taste.
Hidden dial info
Allows you to hide portions of telephone numbers that
otherwise would be displayed when the Mailer places an
outgoing call. E.g. The Mailer calls 352-316702, if you had
one of the hidden dial info strings set to 352- the displayed
number would be 316702.
Function keys
Allows you to define up to 20 (24) programs, etc. to invoke
from the Mailer when any of the functions keys are pressed.
The first 10 (12) function keys are accessed through <F1> -
<F10> (F12), the second 10 (12) function keys are accessed
through <Shift-F1> - <Shift-F10> (F12).
Title
The title to appear on the screen when you press <Alt-K>
from the Mailer's main screen. This is also written to
the log file when a function key is pressed.
Action
The program to invoke or errorlevel to exit with. To
specify more than one program, separate them by
semicolons (;). To exit with an errorlevel, specify
?<errorlevel>.
E.g. LIST C:\FD\FD.LOG;DEL C:\FD\FD.LOG
15
would load the program LIST and pass C:\FD\FD.LOG as the
parameter. When the LIST program terminates, the Mailer
would proceed to the next command, which in this case
removes C:\FD\FD.LOG.
?255
Would force the Mailer to terminate with an errorlevel of
255.
Pause
Specifies whether or not you want the Mailer to pause
when the invoked program(s) terminates.
Check
Specifies whether or not the Mailer should rescan the
NetMail folder when the invoked program(s) terminates.
Swap
Specifies whether or not the Mailer should swap itself
out of memory prior to invoking the specified commands.
>>> To create a DOS shell that does not force a re-scan of
the NetMail folder, specify C:\COMMAND.COM (or wherever
you have your copy of COMMAND.COM stored) as ACTION and
set CHECK to NO.
Errorlevels
This section allows you to invoke BBS software, or other
similar software, when an incoming call is established and
the Mailer has determined that it is not a mail call. It also
allows you to define an errorlevel to exit with when mail has
been received.
If a baudrate related errorlevel is zero, the Mailer will
display a message to human callers saying that your system
does not support non-mail calls at that speed and then
terminate the call. If you are running in mail-only mode, the
Mailer will never accept non-mail (human) calls.
If the RECEIVED MAIL errorlevel is zero, the Mailer will
never exit when mail has been received. Whether or not the
Mailer will actually exit when it has received mail is
determined by the current event behavior and whether or not
the received file(s) indicated mail.
The CREATE .BAT FILE option allows you to simplify BBS
operation. If it is enabled, the Mailer will create a batch
file containing the current baudrate, the COM port used, the
number of minutes left to the next system event, etc. This is
described in a separate section.
16
Audio control
The Mailer can sound alarms and make other noises when
certain events occur, such as received mail, incoming human
callers, fatal errors, etc. This section allows you to
control which sounds should be active and when audio should
be active.
Swapping
Determines whether or not you want the Mailer to use swapping
when executing external programs. You can disable the use of
EMS/XMS memory for the swap function. The swap function is
explained in the Miscellaneous section.
<C> Protection
Allows you to protect certain functions of the Mailer, such
as access to the DOS shell, Editor, Nodelist compiler,
Terminal, etc. with a password.
<C> Fax
Allows you to control how the Mailer should handle incoming
fax calls.
4.4.4 Editor
Miscellaneous
<C> Delete original (Conference)
<C> Delete original (Local)
<C> Delete original (NetMail)
Determines if the Editor should ask "Delete original
message" when replying to messages in EchoMail
(Conference), Local, and NetMail-type folders.
Show hard CRs
If enabled, the Editor will show hard CRs in messages.
The display of hard CRs is disabled by default and can be
toggled from within the Editor.
Margin
Specifies the margin at which the Editor should
automatically wrap text when you enter and quote (reply)
messages. The default value, 60, should not be changed in
most cases.
When you read messages in the Editor, it will use all
available columns (80, 132, etc.) as the wrap margin.
17
<C> Honor CFM
Specifies whether or not the Editor should generate a
Return Receipt for received messages with the CFM
(Confirmation Receipt Request) flag set. The CFM flag is
discussed later in the Editor section.
<C> New mail semaphores
Specifies whether or not the Editor should create the new
mail semaphores FMNEWNET, FMNEWCNF, and FMNEWLOC upon
exit when you have entered one or more messages.
NetMail folder
<+> Restricted
Specifies if the NetMail folder should be restricted. If
you enable this, users with User or Administrator access
can only read private messages addressed to their
usernames.
<+> Read-only
Prevents users with User or Administrator access from
writing messages in the NetMail folder. The definition of
writing includes forwarding and moving of messages to the
NetMail folder.
<+> Export OK
Defines whether or not users with User or Administrator
access can export messages from the NetMail folder. The
definition of export includes moving, copying, and export
to disk.
Use tables
Defines whether or not the translation tables should be
active by default in the NetMail folder. This can be
toggled from within the Editor.
Crash
If the Crash status bit should be set by default on
locally created messages.
Direct
If the Direct status bit should be set by default on
locally created messages.
Hold
If the Hold status bit should be set by default on
locally created messages.
18
Private
If the Private status bit should be set by default on
locally created messages.
Kill/Sent
If the Kill/sent status bit should be set by default on
locally created messages.
<+> Use Zonegates
Determines if the Editor should ask you whether or not
you want to send inter-zone messages via the zonegate,
never send messages via the zonegate, or always send
inter-zone messages via the zonegate.
Keyboard macros
Allows you to define up to 20 (24) strings. These can be used
to insert common text, such as name signatures, etc. while
editing messages. The first 10 (12) function keys are
accessed through F1-F10 (F12), the second 10 (12) function
keys are accessed through Shift F1-F10 (F12).
The Editor macro language is discussed in the section about
how to operate the Editor.
Origin lines
Appended to messages you create in Conference-type folders to
show the origin of a message. These should include the name
and location of your system if possible.
You can choose default origin lines for all Conference-type
folders. You can also choose a different origin line from
within the Editor.
Whether or not the origin line is appended to messages you
enter in Conference-type folders is controlled by the Echo
info status bit for each folder.
Display
Screen size
25
25 line mode.
43/50
43/50 line mode. Only available for systems with EGA
and VGA cards.
19
Auto
Specifies that the Editor should attempt to
automatically adapt to whatever the current screen
size is when it is are started. This also means that
the Editor will not attempt to reset the screen mode
when it is terminated.
<+> Custom
Allows you to specify computer register values to
send to the INT 10h (Video BIOS) to set and reset the
screen.
Colors
Allows you to choose between the default monochrome (black
and white) and the default color sets. You can also choose to
customize the colors to suit your own needs.
Xlat.In and Xlat.Out
Defines the translation tables to use wherever the
translation table status bit is active. This is used to
translate language specific 8-bit ASCII characters to 7-bit
ASCII when writing messages to disk and vice versa when
reading messages from disk.
The In table is used when reading messages from disk and the
Out table is used when writing messages to disk.
FDSETUP automatically creates reasonable defaults for most
countries when it creates a new SETUP.FD file. If you are
located in an English speaking country, you do normally not
have to worry about translation tables.
Swapping
Determines whether or not you want the Editor to use swapping
for its DOS shell. You can disable the use of EMS/XMS memory
for the swap function. The swap function is explained in a
separate section.
<C> Fax
Settings related to internal fax support.
4.4.5 Terminal
Miscellaneous
Init
An additional modem initialization string, sent to the
modem as soon as the Terminal is started.
20
If you start the Terminal directly from DOS (FD -TERM) or
have set the Terminal-only option in FDSETUP, the
Mailer's initialization strings are first sent to the
modem.
Download
Default download path. Files that you receive (download)
during a Terminal session will by default end up here.
Upload
Default upload path.
Editor
Allows you to install an Editor or file listing program
and invoke it from the Terminal. The Terminal will prompt
your for optional parameters, such as filenames, etc.
This can also be used to invoke external protocols or
external protocol menu programs.
Protocol
Zmodem, SEAlink, Telink, or Xmodem. Defines the default
transfer protocol to use for file transfers in the
Terminal.
Emulation
ANSI, TTY, VT100 or VT52. Defines the default Terminal
emulation protocol to use in the Terminal. Note that the
Terminal's ANSI protocol supports the AVATAR/0+ (AVT/0+)
emulation protocol.
AVATAR/0+
Allows you to disable the support for AVATAR/0+ sequences
in ANSI emulation. This can be toggled from within the
Terminal.
Buffer
The size, in KB, of the scroll-back buffer. The scroll-
back buffer stores information that has "rolled off" the
top of the screen during Terminal sessions.
Connect noise
Whether or not the Terminal should make noise when a
connection has been established.
Transfer noise
Whether or not the Terminal should make a noise after
file transfers.
21
Use tables
Whether or not the Terminal translation tables should be
active by default. See Editor > Xlat.In for a detailed
explanation of translation tables.
Auto Zmodem
Whether or not the automatic Zmodem download (receive)
function should be enabled by default.
Local echo
Whether or not the Terminal should echo typed characters
to your screen by default.
Wrap around
Whether or not the Terminal should move the cursor to the
beginning of a new line when it reaches the end of the
previous line.
Delay
Number of seconds to wait between outgoing calls if the
number you dialed was busy or did not answer. If there is
more than one entry in the dial queue, the delay is
ignored and the Terminal proceeds to the next number in
the queue.
<+> Logging
Allows you to enable logging of file transfers, dialed
numbers, time spent on-line to systems, etc. Similar to
the Mailer's log output.
Display
Screen size
25
25 line mode.
43/50
43/50 line mode. Only available for systems with EGA
and VGA cards.
Auto
Specifies that the Terminal should attempt to
automatically adapt to whatever the current screen
size is when it is are started. This also means that
the Terminal will not attempt to reset the screen
mode when it is terminated.
22
<+> Custom
Allows you to specify computer register values to
send to the INT 10h (Video BIOS) to set and reset the
screen.
Keyboard macros
Allows you to define up to 20 (24) macro strings. These can
be used to transmit common text, such as names and passwords,
etc. The first 10 (12) function keys are accessed through
<Shift-F1> - <Shift-F10> (F12), the second 10 (12) function
keys are accessed through <Ctrl-F1> - <Shift-F10> (F12). This
is referred to as the default macro set.
To enter characters with an ASCII code below 32 (space), hold
down the <Alt> key, enter the ASCII code on the numerical
keypad and release the <Alt> key.
Xlat.In and Xlat.Out
See Editor > Xlat.In for a detailed explanation of
translation tables. The Xlat.In table is used for characters
received from the modem (remote). The Xlat.Out table is used
for characters typed on the keyboard.
IEMSI Profile
Defines the default IEMSI (Interactive Electronic Mail
Standard Information) profile used to negotiate interactive
EMSI sessions with BBS software supporting it.
Active
Determines whether or not IEMSI support should be active
by default.
Name
The username you wish to use. If this field is empty, the
ACTIVE field (above) is automatically toggled to "NO".
Handle
The handle you wish to use, or empty if none.
Password
The password you wish to use.
23
Hot-keys
Quiet
Pausing
Editor
News
New mail
New files
Screen Clr
Specifies default user profile options, allowing you to
customize the BBS or on-line service's behavior.
The Terminal allows you to configure separate profiles
for each individual telephone number in the Terminal
Phone Directory.
4.4.6 Modem
This option is used to configure your modem for use with
FrontDoor. Modems are discussed in a separate section.
4.4.7 Printer
<C> The printer configuration can only be changed in the
commercial version. The shareware version defaults to using
LPT1.
4.4.8 Manager
The managers are used to define events, session level
security, file protection (for file requests), your message
folders, and strings to be sent to the modem when calling
specific systems.
All managers require that the SYSTEM path has been defined
since they store their data files (EVENT.FD, PASSWORD.FD,
REQUEST.FD and FOLDER.FD) in that directory.
Event Manager
Events are discussed in a separate section.
Folder Manager
Folders are used to define different areas (directories, or
boards for the Hudson Message Base) so that you can use the
Editor to read and write messages in those areas. The Editor
only knows about one folder by default. It is defined in the
Filenames section of FDSETUP (described above) and is
referred to as the NetMail folder.
24
The folder manager has two modes. The first is the view mode,
which is self explanatory. The second mode is the edit/create
mode and is accessed by pressing the Ins key. It will now be
described.
Status
The status and type of the folder.
Origin
The default origin line to use. This is only used for
Conference-type folders with the Echo info status
enabled. Origin lines are used to identify the origin of
a message in Conference conferences. This is required
because conference mail is not a point to point
environment, like a telephone conversation or NetMail
exchange.
Mail conferences are usually widespread and can have an
unlimited number of participating systems.
Title
The title appearing in the folder list when you select a
new active folder in the Editor.
Board/Path
Depending on the type of the folder, this is either the
Hudson Message Base board number or the DOS path
(directory) where the messages for this folder should be
stored.
<+> Users
Defines which users should have access to this folder. If
a user does not have access to a folder, it will not show
up on his/her list of available folders.
Password
Defines whether or not access to the folder is protected
by a password. You can allow users to access a folder,
and the password protect it.
Use AKA
Defines which address (AKA) the Editor should use for the
folder. This is only important for Conference-type
folders with the Echo info status enabled. The address is
a part of the origin line.
25
Folder status
Restricted
If enabled, users can only read Private messages
addressed to their username. Public messages are not
affected by this.
Echo info
Whether or not an origin line should be appended to
newly created messages. See Origin (above) for more
information.
Export OK
See NetMail folder > Export OK described above.
MsgBase
Specifies that the folder is of the Hudson Message
Base type, rather than a directory with .MSG message
files. The Hudson Message Base (HMB) is used by
several BBS packages, such as RemoteAccess.
Translate
Enables the translation tables for the folder. They
can be toggled on/off from within the Editor.
Private
Specifies that the Private status should be allowed
(and the default) for messages created in the folder.
This should NOT be used in Conference-type folders
unless the conference explicitly allows this.
Read-only
See Netmail folder > Read-only described above.
<C> No check
Determines if the Editor should access the specified
path when check for unread mail. This allows you to
create folders that holds messages on removable
media, e.g. floppy disks, that is not always
accessible to the Editor.
<C> Force CR
Forces the Editor to append a hard CR to all lines
instead of letting paragraphs flow. Some INTERNET
mail environments require that the line length does
not exceed a certain limit.
26
Conference
Defines the folder as a Conference folder (as opposed
to a Local or NetMail-type folder).
<C> NetMail
Defines the folder as NetMail-type folder (as opposed
to an Conference or Local-type folder). This enabled
nodelist lookups, carbon copies, etc.
Local
Defines the folder as a Local folder (as opposed to
an Conference or NetMail-type folder). This is
usually used to access local BBS message areas.
Security
The security manager is used to define session level
passwords for other systems. It can also be used to
explicitly refuse File/Update Requests and Mail from a
system, and to disable/enable specific protocol and
handshake options to fine tune your outbound mail
sessions.
Session level passwords are used to protect the receiving
(called) system in a mail session, and calling system
during an outbound EMSI session, to ensure that the
calling system really is what it appears to be. Anyone
can setup a Mailer, like FrontDoor, and send you mail. If
there is mail waiting for the address they are using,
your system will by default attempt to send it.
You should setup session level passwords for all your
common mail links, such as conference mail distribution
systems, etc.
System
The system address of the remote system. Eg.
2:270/17.
Password
Defines the session level password that your system
will present when calling the specified system and
the password that your system requires to establish a
mail session with the specified system.
Note that some mailer software treat passwords case
sensitive, ie. ALLAN is not treated like AlLaN. The
FrontDoor Mailer will treat passwords case
insensitive on incoming (inbound) calls. They will,
however, be sent EXACTLY as you have defined them
here.
27
You do not have to specify a password to use any of
the other options.
FREQs
Whether or not the specified system is allowed to
make File/Update Requests (see "File Requests").
Mail
Whether or not your system will allow the specified
system to call your system.
>>> Note that by disabling (setting it to "NO") this
option, you may be in violation of network
policy.
EMSI
Whether or not you want the Mailer to attempt to
negotiate an EMSI session when it calls the specified
system.
FTS-1
Whether or not you want the Mailer to attempt to
negotiate an FTS-1 session when it calls the
specified system.
Zap
Whether or not you want the Mailer to use the
ZedZap/Zmodem protocol when negotiating an FTS-6
(YooHoo) session. If this is set to "NO", the
DietIFNA protocol (Telink/SEAlink) will be used
during YooHoo sessions with the specified system.
YooHoo
Whether or not you want the Mailer to attempt to
negotiate an FTS-6 session when it calls the
specified system.
Notes regarding protocols
The Mailer will by default attempt to negotiate a
mail session in the following order:
1. EMSI
2. FTS-6 (YooHoo), ZedZap/Zmodem
3. FTS-6 (YooHoo), DietIFNA
4. FTS-1
The Mailer will ignore any entries in the security
manager with inactive status.
28
Request Manager
The request manager is used to protect file requests.
File and Update Requests are discussed in a separate
section.
5 The nodelist and the nodelist compiler
The nodelist is FrontDoor's telephone directory and is used for
several purposes. Among these are to allow you to perform name
lookups of other SysOps, to retrieve information about remote
systems, such as the maximum supported baudrate, modem flags, and
system capability flags, to check if a remote system is known to your
system or should be treated as an unlisted system.
The Mailer requires that a nodelist be present whereas the Editor and
the Terminal can both be used without one, if so required. The
typical FidoNet nodelist contains over 20.000 systems and has a
fairly straight forward structure as follows.
Zone
Usually a large geographical area, such as North America, Europe,
Australia and New Zealand, etc. At the time of the release of
this package, the following FidoNet Zone numbers have been
allocated:
1 North America (including Canada)
2 Europe
3 Australia, Tasmania, and New Zealand
4 Latin America
5 Africa
6 Asia
Region
Usually a somewhat smaller geographical area, such as a country
or part of a (large) country. A collection of regions make up one
zone.
Net
Usually a collection of systems local to each other. Typically a
city and in some cases including its suburbs. A collection of
nets make up one region.
Node
A single system within a net.
29
Point
A single system belonging to a node. Typically, a point is
similar to a user logging on to a BBS system using his/her
terminal program, with the main difference being that a point
performs most of his/her activities offline and use smart
software to collect and transit his/her mail.
5.1 Hosts and hubs
The coordinator of a net is called the host or NC for Network
Coordinator. The host is responsible for maintaining the nodelist
segment for his/her net and to act as an inbound NetMail gateway
for the systems in his/her net ("host routed mail").
In a large net, it is quite common that "sub-hosts", called hubs,
are set-up to aid in mail distribution within the net. In other
words, a hub has the same function for systems in a network that
a host has for (remote) systems outside the same network.
5.2 Compiling a nodelist
Before FrontDoor can use the information in a nodelist, it must
be compiled with the FrontDoor Nodelist Compiler (FDNC). FDNC
will process the specified nodelist file(s) and generate database
information and index files.
The nodelist that FDNC needs to process is often referred to as
the raw nodelist. It should not have been processed by Xlatlist,
Parselst or a similar utility; but only be the nodelist you
receive each week (if you are a FidoNet node) from your host.
Grab a somewhat recent version of a nodelist and decompress it.
Place the resulting file (such as NODELIST.228) in the NODELIST
directory. Create a file called FDNODE.CTL with your a text
Editor and place it in the same directory. You can also use the
sample file included in the FrontDoor distribution package and
modify it to suit your needs.
5.2.1 FDNODE.CTL
FDNODE.CTL is FDNC's control file. It is used to control how
FDNC processes the nodelist files, for dial translation and
cost calculation. The order of commands does not matter. All
commands are case insensitive.
POINTLIST <FILENAME> [BOSS]
This option allows you to add points to your nodelist
database. The optional BOSS address is required if
FILENAME does not contain a BOSS entry and should not be
specified if FILENAME contains a BOSS entry.
30
If you only have one file with point entries, you can
name it FDPOINT.PVT. FDNC will automatically use this
file if it is found in the NODELIST directory. If you use
one or more POINTLIST statements, FDNC will merge all
specified files into FDPOINT.PVT, overwriting its
contents. A separate chapter discusses the point concept.
PVTLIST <FILENAME> [ZONE]
Similar to the POINTLIST command, but FILENAME contains
one or more regular nodes. The optional ZONE number is
required if FILENAME does not contain a ZONE entry and
should not be specified if FILENAME contains a ZONE
entry. The optional ZONE number is only supported for the
first PVTLIST statement. FDNC accepts the POINT keyword
in private nodelists.
31
If you only have one file with additional node entries,
you can name it FDNET.PVT. FDNC will automatically use it
if it is found in the NODELIST directory. Note that if
you use one or more PVTLIST statements, FDNC will merge
all specified files into FDNET.PVT, overwriting its
contents.
Note that FILENAME for POINTLIST and PVTLIST may contain
wildcard characters (* and ?). FDNC will use the most
recent (by comparing the timestamp of the matching files)
file.
SWEPULSE
This command was added to handle the somewhat screwed up
method Swedish pulse exchanges handles dialing. Most
modem manufacturers uses the British standard for pulse
dialing, which is not compatible with Swedish pulse
dialing. If you use SWEPULSE in FDNODE.CTL, telephone
numbers will be properly translated. Do NOT use this
command unless you live in Sweden and have to use pulse
dialing.
PHONE <ADDRESS> <NUMBER>
Some systems are listed as PVT (private) in the nodelist,
in which case there is no telephone number available (the
text -Unpublished- is used in place). This, of course,
means that the Mailer cannot call a system listed as PVT.
If you have the phone number of a PVT listed system, or
wish to override the telephone number listed in the
nodelist, you can use the PHONE command.
ADDRESS is a fully qualified address (e.g. 2:270/17).
NUMBER is an untranslated (raw) telephone number (e.g.
352-355-936). If the PHONE command is used, FDNC will
remove possible DOWN, HOLD and PVT flags for the
specified system.
USE ZONE <ZONE>[<ZONE> <ZONE>..]
This command controls which zones FDNC should include in
the nodelist and username index files. The default is to
include all encountered zones. This does not affect the
contents of raw nodelist files, only what information
ends up in the nodelist and username index files.
DIAL <NATL PREFIX>/<SUFFIX> <INTL PREFIX>/<SUFFIX>
Indicates the start of the dial translation table. All
four parameters are optional and are only used if no
other translation applies for a telephone number.
32
If you only want to use a national (NATL) prefix/suffix,
you must specify the / character for the international
(INTL) prefix/suffix to indicate no special treatment.
The same applies if you only want to use an INTL
prefix/suffix.
; prefix
; prefix/suffix
; /suffix
;
DIAL / 00 ; Add INTL prefix to all INTL
; numbers.
352- ; Strip country code
61- 0061-/X2 ; Send X2 to modem for
; Australia
46-8 /391 ; Append (suffix) 391 to all
; numbers in Stockholm
; Sweden.
END
END is required to terminate the dial translation table.
If you need to strip the search value from a number, you
do not have to put anything after it. In other words, if
you need to strip 1-305-596 from all number, you enter
that string with no translation. Comments are ignored and
must be preceded by a semicolon.
DIAL 12345-1- 00
..
..
END
Would add (prefix) 12345-1- to all NATL numbers not
otherwise translated. It would add (prefix) 00 to all
INTL numbers not otherwise translated.
DIAL /2222 00/1111
..
..
END
Would append (suffix) 2222 to all NATL numbers not
otherwise translated. It would add (prefix) 00 and append
(suffix) 1111 to all INTL numbers not otherwise
translated.
The translation values (strings) does not have to contain
number characters (0-9,.-). They can include commands
such as "S25=100" etc. as long as your modem supports it.
33
COST <NATL COST> <INTL COST>
Indicates the start of the cost table. The two (default)
parameters are NOT optional. The default cost only
applies to numbers with no matching entry in the cost
table.
COST 5 125 ; NATL default=5, INTL=175
1- 75 ; Canada and the US
1-808- 125 ; Hawaii
46- 27 ; Sweden
END
An additional parameter can be added after the cost for a
number entry indicating the maximum baud rate used. This
is useful when calling locations with a lot of line noise
etc. Please note that this does not work with several
high-speed modems such as the US Robotics Courier HST.
You cannot force a HST modem to connect at 2400 with
another HST modem by changing the baud rate.
To compile your nodelist, type FDNC and press <Enter>, or invoke
the nodelist compiler from FD's main menu, <Alt-N>.
When FDNC is started, it will compare the date of the raw
nodelist and its index files. If the dates match, and no update
has been made to FDNODE.CTL, no compilation will be made and the
program will ask "Nodelist files are up-to-date, compile
anyway?".
If you want to force compilation, run FDNC with the -F command
line switch.
5.3 Nodelist flags
Most of the system entries in the nodelist contain one or more
capability flags to indicate the system's capability. The Editor
is capable of displaying, and the Mailer and Terminal are capable
of using, any nodelist flag present in a system's nodelist entry.
5.4 Command line switches
/C
Compile the nodelist if it (or FDNODE.CTL) has been updated since
the last time it was compiled, otherwise exit directly. This is
useful for compiling the nodelist in batch files since it avoids
the "Nodelist files are up-to-date, compile anyway?" prompt.
/F
Forces FDNC to compile the nodelist regardless of whether or not
it has been updated.
34
5.5 Points
As mentioned before, a point is similar to a user logging on to a
BBS system using his/her terminal program, with the main
difference being that a point performs most of his/her activities
offline and use smart software to collect and transit his/her
mail.
A point system is addressed by specifying the BOSS system's
address followed by the point number. E.g. 2:270/17.1 is point
one of 2:270/17. The BOSS system is called point zero
(2:270/17.0), but the .0 is normally left out.
FrontDoor is a point smart software package and fully supports
the "four-dimensional" (zone, net, node, point) addressing
method. FrontDoor also supports the "two-dimensional" point
approach used by some software. This is often called the
"fakenet" or "pointnet" method. "Fake" because the software uses
a non-existent network number to identify its "pointnet" and uses
the node field for the point number.
The maximum number of points any system can have is 65,535, not
counting the BOSS, or point zero.
5.5.1 Pointlist
A pointlist is similar to a normal nodelist, with the
exception that all entries are considered point systems.
FrontDoor, by default, uses the file FDPOINT.PVT to store its
pointlist. It is possible to add points of other systems to
your pointlist. This will allow you to enter messages to
other systems' points just like you would to any other
system.
Here is a sample FDPOINT.PVT:
,1,FrontDoor_Development,Strassen,JoHo,-Unpublished-,9600
,2,APX_Development,Strassen,JoHo_Too,-Unpublished-,9600
As you can see, a point list looks very much like a raw
nodelist. The last field contains nodelist flags (HST, MO,
CM, etc.) and if more than one flag is present, they are
separated by commas.
Points can also be added to systems in the master nodelist by
using the POINT keyword:
,7,SuperMail_HQ,Strassen_L,Jon_Doe,352-123-456,9600,CM,XA,ZYX
Point,1,Marketing,Strassen,Jon's_Uncle,-Unpublished-,9600
,17,UseMail_HQ,Strassen_L,Jill_Doe,352-234-567,9600,CM,XA,HST
Point,1,The_Lab,Strassen_L,Jill's_Uncle,-Unpublished-,9600
Assuming this was listed under the Net-270 host in zone two,
we have created 2:270/7, 2:270/7.1, 2:270/17, and 2:270/17.1.
35
The second example works well if your nodelist is not updated
frequently (weekly, daily, etc). But if you have to add the
"Point,#" every time you get a new nodelist, this task
becomes rather tedious.
FrontDoor therefore supports an additional pointlist format:
Boss,2:270/7
,1,Marketing,Strassen,Jon's_Uncle,-Unpublished-,9600
Boss,2:270/17
,1,The_Lab,Strassen_L,Jill's_Uncle,-Unpublished-,9600
This does away with the need to constantly update the BOSS
system's data in the raw nodelist and allows you to put your
pointlist in a separate file. FDNC will then take the BOSS
system's data from the master nodelist.
5.5.2 FDNODE.CTL
If you only have one file with point definitions, you can put
them in FDPOINT.PVT and use the third example (above) to add
points for other systems, or your own system. If you have
more than one file with point definitions, however, you
should NOT name any of them FDPOINT.PVT.
Assume we have two files with pointlists:
FDHQ.PTS:
;
; Pointlist for 2:270/17
;
Boss,2:270/17
,1,The_Lab,Strassen_L,Jill's_Uncle,-Unpublished-,9600
,2,The_Office,Strassen_L,Jill's_Sister,-Unpublished-,9600
and
WIZOZ.PTS:
;
; Pointlist for 1:135/990
;
Boss,1:135/990
,1,OZ_Point,Miami_FL,Dorothy,-Unpublished-,9600
We would tell FDNC to merge these two files into FDPOINT.PVT
before it compiles the nodelist, by specifying the following
in FDNODE.CTL:
pointlist C:\FD\NODELIST\WIZOZ.PTS
pointlist C:\FD\NODELIST\FDHQ.PTS
36
The BOSS statement in FDHQ.PTS and WIZOZ.PTS can be removed
if you instead specify:
pointlist C:\FD\NODELIST\WIZOZ.PTS 1:135/990
pointlist C:\FD\NODELIST\FDHQ.PTS 2:270/17
You must ALWAYS specify the address of the BOSS system (as
shown above) if it is not listed in the actual pointlist
file.
5.5.3 Treatment of points
A point system is treated just like any other system with one
exception. A point system of another system than your own is
always treated as its BOSS (or point zero) system. When the
Mailer creates mail packets for 1:135/990, it includes mail
for any points under it by default.
5.5.4 Remapping
If you have points that uses "point dumb" software, ie. which
does not support the "four dimensional" (zone, net, node,
point) concept fully, you must tell FrontDoor about this.
Since FrontDoor supports the "four dimensional" concept, it
has to remap mail from and to "point dumb" software.
5.5.5 POINTNET
If the POINTNET environment variable is set, mail from and to
systems with the same net number as the value of POINTNET is
remapped.
E.g. in AUTOEXEC.BAT:
SET POINTNET=1004
Would force FrontDoor to remap mail from and to 1004/1,
1004/2, 1004/3, and 1004/4 to 2:270/17.1, 2:270/17.2,
2:270/17.3, and 2:270/17.4 respectively; assuming your
network address is 2:270/17.
FrontDoor automatically remaps messages that it extracts from
mail packets. If you use the POINTNET variable, FrontDoor
will treat 1004/1 identical to 2:270/17.1; assuming your
network address is 2:270/17.
37
5.6 Sharing the nodelist
FrontDoor is capable of using the nodelist together with another
program that supports sharing of the nodelist. If you are running
FrontDoor under DESQview or LANtastic, for example, it is
possible to run the Mailer at the same time as the Editor,
sharing the same nodelist.
When FDNC compiles the nodelist, you must, however, make sure
that no other program (including text editors) is using any of
the nodelist files (FDPOINT.PVT, FDNET.PVT, and/or the raw
nodelist).
6 Modems and FOSSIL drivers
FrontDoor works with most "Hayes-compatible" modems, including US
Robotics HST and HST/DS, Telebit's Trailblazer, ANC, Everex, ZyXEL
and Hayes. The general rule is that the modem must be able to send
alphanumeric result strings. For most low-speed modems, the basic
configuration is all that is required. For high-speed modems such as
the US Robotics HST, a few extra settings are necessary.
To utilize high-speed modems in the most efficient way, it must be
properly configured for use with FrontDoor. Some high-speed modems
are incorrectly configured for use with FrontDoor when they leave
their factory.
FrontDoor require that your modem can return verbal result codes,
such as "CONNECT 2400" and "NO CARRIER". In addition, if you want
FrontDoor to answer the telephone on inbound calls, the modem must be
able to return a verbal code indicating a ring signal, such as
"RING". The modem must not have DCD (carrier detect) forced. It
should support disconnecting by lowering DTR (data terminal ready),
but it is not necessary. DTR must, however, not be forced.
For high-speed modem users, it is usually recommended that you lock
the DTE (computer<>modem) speed to the highest possible baudrate;
which is usually 19200, 38400, or 57600 BPS.
The current version of FrontDoor does not support manually operated
modems with constant DTE speeds since most of them do not send any
type of messages to the terminal (program). This is expected to be
implemented in future versions.
6.1 Basic configuration
The modem options are located in FDSETUP under the MODEM >
Default settings pull-down menu. There are four sub-menus,
Hardware, Messages, Command strings, and Answer control.
Hardware
The Hardware option screen allows you to configure things like
the highest baudrate supported by your modem, the COM port to
which your modem is connected, etc.
38
Serial port
The COM port your modem is attached to (1-32).
Locked port
Whether or not you have locked the FOSSIL driver's baudrate.
Maximum baudrate
The maximum supported baud rate of your modem (300-38400
BPS). If you have locked your FOSSIL driver (discussed
later), set this to 38400 BPS.
Reset modem to connect speed
>>> This option should ONLY be used if you have a modem that
supports the CCITT V.23 (split speed, 1200/75 and
75/1200) recommendation.
Lower DTR when busy
Determines how the Mailer should handle the modem when it
invokes other programs, exits, and shells to DOS. If enabled,
the Mailer will simply lower DTR. This means that your modem
will not answer the phone, but any calling systems will not
get a busy signal. If you disable this, the Mailer will send
the Offhook string to the modem instead of lowering DTR. This
can be used to take the modem offhook when your system is not
available so that calling systems gets a busy signal instead
of no answer.
>>> It is against the law of some countries to take a modem
offhook unless actual communication is taken place. As
the operator of FrontDoor, it is your responsibility to
be aware of such laws in your own country.
Lower DTR to terminate call
If enabled, the Mailer will drop DTR for a short period of
time to terminate calls. Most modems supports this and you
should only disable it if your modem does not support
lowering of DTR. If disabled, the Mailer will send the Escape
code string followed by the Onhook string to terminate a
call.
Toggle DTR before dialing
Specifies that the Mailer should lower DTR, pause, and then
raise DTR again every time it places an outgoing call. While
this increases the chances of call collision, it may be
required by some modems to reset properly, etc. Do not enable
this option unless it is absolutely necessary.
39
<C> Carrier detect mask (CDMASK)
The bitmask the Mailer should use when asking the FOSSIL
driver for the port status to determine if a carrier signal
is still present.
Connect messages
Status messages
These options allows you to define the messages sent by your
modem. If your modem does not send one or more of the strings you
should NOT remove them.
The 300 string is sent as CONNECT followed by a carriage return
by some modems (US Robotics HST for example). You should
therefore set the string to CONNECT| (the pipe character will be
replaced with a CR by the Mailer) if this is the case with your
modem.
The RING string should be set to RING| (the pipe character will
be replaced with a CR by the Mailer) if your modem sends the
RINGING message while waiting for a call to be connected.
<+> Custom message
Allows you to define a custom connect message and its associated
baudrate in the event that your modem returns a connect message
not otherwise covered by FrontDoor; such as "CONNECT FAST".
Command strings
All command strings may contain a pipe (|) character, which
translates into a CR and a tilde (~) character which translates
into a one second pause.
Escape code
Used to place the modem in command mode (as opposed to data
mode). This is only used if you have disabled Hardware >
Lower DTR to terminate call or if you are using the Hardware
> Reset modem to connect speed option.
Return on-line
Used to place the modem in data mode (as opposed to command
mode). This is only used if you are using the Hardware >
Reset modem to connect speed option.
Onhook
Used to place the modem on-hook (as opposed to off-hook) if
you have disabled Hardware > Lower DTR when busy or Hardware
> Lower DTR to terminate call".
40
Offhook
Used to place the modem off-hook (as opposed to on-hook) if
you have disabled Hardware > Lower DTR when busy.
Dial
Used when the Mailer places an outgoing call. The Mailer will
send the dial (this) string, the Prefix, the telephone
number, followed by the Suffix.
I.e. <Dial><Prefix><Number><Suffix>
Prefix
Sent before every number when the Mailer places an outgoing
call (see above).
Suffix
Sent after every number when the Mailer places an outgoing
call (see above). This should be set to the pipe (|)
character to indicate a CR in most cases.
Delay
The delay (in 1/10 second) between every string the Mailer
sends to the modem. If you have a mode that accept commands
rapidly, such as the US Robotics HST, you can set this as low
as one or two, but most modems require that this is set
between four and eight.
Init-1..Init-3
Modem initialization strings. They are sent every time the
Mailer initializes the modem in order (Init-1, Init-2,
Init-3). Unused strings should not be set to anything (leave
field blank).
Down
Sent to the modem when the Mailer terminates. This occurs
when mail has been received or when the Mailer terminates
execution.
Reset
Sent to the modem to force it to respond with an OK message.
This should be set to "AT|" in most cases.
41
Answer control
Manual answer
Specifies that the Mailer should wait for the RING message
from the modem and then send the force answer string (below)
to force the modem to answer.
>>> This is the safest way to control modem answering and
should be used unless your modem does not support it. For
Hayes compatible modems, you should add S0=0 to one of
your init strings to prevent the modem from answering
automatically.
Force answer
The string forcing the modem to answer an incoming call. This
should be "ATA|" in most cases.
Answer delay
When the Mailer receives the RING message from the modem, it
will pause for nn 1/10 seconds before sending the force
answer string. This should be set between four and eight for
most modems.
<+> Enable LDFRS
Enables Logging of Data Following Ring Signal (DFRS). This is
mainly used in areas that offer CALLER*ID as a service to
their subscribers. The CALLER*ID data will be logged between
the first and the second RING in most cases.
<C> Fax
Used to enable or disable the internal Fax handling of the
Mailer.
6.2 Advanced configuration
Many modems have several different connection modes and options.
The US Robotics HST/DS, for example, can be configured between
several different connect modes, including CCITT V.32, CCITT
V.32bis, and the proprietary HST protocol.
Since the nodelist normally indicates a system's hardware (modem)
capabilities, the Mailer can automatically reconfigure your modem
depending on what type of hardware the remote system being called
is using. This automatic reconfiguration feature can also be used
to disable or enabled certain options for specific systems (i,e.
not based on nodelist data) because of problems with noisy lines,
long satellite delays, etc.
This is all configured in the MODEM MANAGER under the Manager
pull-down menu in FDSETUP. The actual data is stored in a file
called MODEM.FD in the SYSTEM directory.
42
6.3 The Modem Manager
The entries are processed as defined, i.e. in sequential order,
top to bottom. It may be important in which order these options
are configured and triggered, the modem manager therefore allows
you to re-arrange individual entries by using the Move (F2)
option.
String to match
A nodelist flag, such as HST, a baudrate, such as 2400, or a
complete network address, such as 2:270/17, that the Mailer
should match in order to send the specified string. To
specify a baudrate, place it behind an equal sign, e.g.
=2400.
>>> The Mailer supports any ASCII text to be entered as the
String to match. The data you enter is matched verbatim
with the data in the nodelist. It is for this reason that
the FidoNet user (U) flag must be taken into
consideration. I.e. "ISDN" does not match "UISDN", nor
does "UISDN" match "ISDN".
String to send
The string that will be transmitted to the modem when a match
is made. The pipe (|) character is translated to a CR and
should terminate the string in most cases.
The Mailer will ignore entries with INACTIVE status.
An example, the HST/DS
Most HST/DS owners will have the following three lines at the
beginning of their MODEM MANAGER list:
V32 ATB0|
HST ATB1|
V32B ATB0|
The first line, V32, will transmit "ATB0" followed by CR to the
modem if the system to be dialed has V32 in its nodelist flags.
This is to enable the HST/DS' CCITT V.32 handshake.
The second line, HST, will transmit "ATB1" followed by a CR to
the modem if the system to be dialed has HST in its nodelist
flags. This is to tell the modem that we prefer the HST protocol.
In the case of a system with both the V32 and the HST flag, we
want the HST flag, because that protocol is faster than the CCITT
V.32 protocol.
The third line, V32B, will transmit "ATB0" to the modem if the
system to be dialed has V32B in its nodelist flags. This it to
tell the modem that we prefer the CCITT V.32bis protocol. In the
case of a system with both the V32B and the HST flag, we want the
V32B flag.
43
Let us assume our modem has a problem, with incorrect busy and
voice signal detection, when it encounters a modem that answers
using the PEP protocol handshake (used by Telebit Trailblazers
for example), we would then want to disable our modem's
capability to detect a busy signal and/or a voice signal. We
would then add:
PEP ATX2|
6.4 FOSSIL drivers
A FOSSIL (Fido/Opus/SEAdog Standard Interface Layer) driver is a
memory resident program (TSR) that works as a layer between the
application program and your computer's hardware. The Mailer
requires a FOSSIL driver to function. One of the advantages of
the standard FOSSIL interface is that programs can be ported
easily to other machines and/or operating systems, or to
communicate with devices that do not normally function like a
"Hayes compatible" modem, such as ISDN cards.
There are several FOSSIL drivers available. The Mailer has been
tested with OpusComm, X00, and BNU with good results. X00 and BNU
will be described here.
BNU
BNU, written by David Nugent, comes in two flavors. One is a
device driver, the other is a .COM file, loaded from AUTOEXEC.BAT
or another batch file. The .COM flavor is assumed in the example.
For a detailed description of the BNU driver, please refer to the
documentation included in the BNU distribution archive.
[AUTOEXEC.BAT]
BNU /R=1024 /T=512 /L1:57600
/R=1024
Specifies a receive buffer of 1024 bytes.
/T=512
Specifies a transmit buffer of 512 bytes.
/L1:38400
Locks COM2 at 57600 BPS (for use with a high-speed modem such
as the ZyXEL U1496-E+).
If you are not using a high-speed modem the above example
should most likely be modified to not lock COM2.
44
X00
X00, written by Ray Gwinn, is a device driver (later versions can
also be loaded as an executable from AUTOEXEC.BAT), it is loaded
from your CONFIG.SYS file when your machine is started. For a
detailed description of the X00 driver, read the documentation
included in the X00 distribution archive.
[CONFIG.SYS]
device=X00.SYS E 1 B,1,57600 T=512 R=1024
E
Disable 5 second advertisement when X00 is first loaded.
1
Number of COM ports X00 should allow to be accessed at
one time.
B,1,57600
Locks COM2 at 57600 BPS.
T=512
Specifies a transmit buffer of 512 bytes.
R=1024
Specifies a receive buffer of 1024 bytes.
If you are not using a high-speed modem the above example may
not be what you want. The most common command line for X00
is:
device=X00.SYS E 1
OS/2 2.x
FrontDoor can be used in an OS/2 DOS box with excellent results.
The two drivers described above, BNU and X00, should, however,
not be used for optimum results. Two drivers that have been
tested with good results exist. The first one, VFD for Virtual
FOSSIL Driver, written by Joakim Hernberg is a FOSSIL layer that
interfaces with the native OS/2 2.x COM driver (or compatible
replacements thereof); the other is SIO/VX00 by Ray Gwinn.
A separate FrontDoor Technical Note (FDTN), number two (2), can
be found on many systems that describe the exact details of how
to add these drivers to your OS/2 configuration.
45
7 Events
There are two basic types of events. Mail events and external events.
Mail events are used to control how the Mailer treats mail during a
given time of the day. External events are used to force the Mailer
to terminate with an errorlevel at a specific time. They can be used
to run system maintenance programs, disk optimizers, etc.
The EVENT MANAGER in FDSETUP is used to control mail and external
events. There is a (required) global event, which is active when no
other event is active. The @ character is used for the global event.
7.1 The Event Manager
The event manager has two modes. The first is the view mode,
which is self explanatory. The second mode is the edit/create
mode. It will now be described.
Tag (T)
The event ID. A letter from A-Z or @. The @ event has special
meaning and is described later. X is used for eXternal
events, all other letters are used for mail events. Which
letter you use is not important. They could correspond with
the time of day, N for Night, E for Evening, D for Day, etc.
The event tag is used to associate an event with a schedule
block in the route file (see "Mail routing").
Days
The days you want the event to be active on. The @ event is
active on all days.
Modifier (M)
You can define a start time for the @ event. It is not used
to control the start of the @ event. It can be added,
subtracted, or ignored, when calculating the actual start
time of other events.
If the modifier for an event is +, the start time of the @
event is added to the start time of the event.
If the modifier for an event is -, the start time of the @
event is subtracted from the start time of the event.
If the modifier for an event is *, the start time of the @
event is ignored and not used to calculate the actual start
time of the event.
This is useful when it is time to switch between winter and
summer time. Instead of having to manually go into each event
and define a new start time, you could change the start time
of the @ event and the start time of all other events will be
changed.
46
Let us assume that you have an event (tag=E) that starts at
08:00 in the morning with a modifier of +. Your @ event has a
start time of 01:00. Since the modifier was + (add), the
start time of @ (01:00) will be added to the start time of
the E event and the result will be that event E starts at
09:00. If you change the modifier to - (subtract), the start
time of event E will be 07:00 (08:00 minus 01:00). If you set
the modifier to * (ignore), the start time of E is not
affected.
Start time
Defines the start time of an event. See Modifier (above) for
an explanation on how this can be affected.
Length
Defines the length of the event. External events (X) always
have a length of 00:01 (one minute).
Errorlevel
For external (X) events, this defines the errorlevel that the
Mailer will terminate with. For mail events, this defines the
errorlevel to exit with if mail is received (and the Mailer
is triggered to exit). If the errorlevel field is set to
zero, the default Mailer > Errorlevels > MAIL RECEIVED
errorlevel will be used.
You may use any value in the range 31-255.
Min.cost
Defines the minimum cost of messages that should be qualified
(see "Mail routing").
Max.cost
Defines the maximum cost of messages that should be qualified
(see Mail Routing). A value of -1 forces the Mailer to ignore
the cost of messages.
Behavior
Defines the behavior of the event. Mail events and eXternal
events have different behavior options, this is described
later.
Retry delay
Defines the delay (in seconds) the Mailer should wait between
placing outgoing calls. A value of zero means that you want
the Mailer to use the default delay (described above).
47
7.1.1 External event behavior
Allow users during event
Defines whether or not non-mail (human) calls are allowed to
interrupt the event.
If a non-mail call comes in at 12:00 and you have an external
(X) event scheduled for 12:30, the Mailer will take the X
event into account when calculating the number of minutes
left until the next event, depending on how this option is
set. If it is disabled, the user would, in this case, only
have 30 minutes until the next event. If it was enabled, the
Mailer would instead scan ahead for the next (if any) event
that does not allow users.
Forced
Defines whether or not the event is forced. The Mailer, by
default, ignores events that it "missed" while doing
something else. If you enable this option, the event will be
executed even if the Mailer have "missed" it.
Assume you have a non-forced external (X) event scheduled for
12:00 and a user calls in at 11:50. The call lasts for 30
minutes (12:20). When the Mailer is brought back up again,
the external event will not be executed. If, however, you had
this option enabled for the external (X) event, it would be
executed as soon as the Mailer was brought up again.
Inactive
Toggles the state of the event. The Mailer will ignore any
inactive events. This allows you to deactivate events without
removing them from the event manager.
7.1.2 Mail event behavior
Allow users during event
This has the same function as for eXternal events. In
addition, if this option is set to "NO" (disabled),
interactive (non-mail) calls will not be accepted during the
duration of the event.
Exit when mail is received
Defines whether or not you want the Mailer to exit when mail
has been received. This allows you to process received
echomail, etc.
High priority (crash) mail only
Forces the Mailer to ignore messages that does not have crash
status. Note that messages with IMM (Immediate) status are
not affected by this.
48
Allow file requests
Defines whether or not you want the Mailer to honor file
requests during an event. If you disable this option, the
Mailer will simply ignore file requests.
Pickup file requests
The Mailer will by default not accept file requests received
during an outgoing (outbound) mail call since you are paying
for the call. This option allows you to pickup waiting file
requests and process them. Whether or not they are actually
honored is defined by the Allow file requests option.
Hold (do not send) file requests
Forces the Mailer to ignore outgoing (your own) file request
messages during the event. This is useful if you do not want
to send out file requests during daytime events for example.
Hold (do not send) file attaches
Forces the Mailer to ignore outgoing (your own) file attach
messages during the event. This is useful if you do not want
to send out files attached to messages during daytime events
for example.
Attempt to pickup waiting mail
Defines whether or not you want the Mailer to pickup any
waiting mail on outgoing calls. The default (YES) should be
used unless you want the Mailer to terminate the mail session
as soon as it has delivered its mail. If this option is
disabled, your file requests (if any) will fail since the
Mailer terminates the call before the remote system has a
chance to process them.
Allow nodes to pickup waiting mail
This option is the same as using the DENY route command (see
"Mail routing"). The only difference is that you cannot be
selective about which systems can pickup waiting mail. If a
system calls in to deliver its mail and this option is
disabled (NO), your system will not release (send) any
waiting mail.
Prioritize outbound calls
Forces the Mailer to make outgoing calls without waiting for
the specified time (retry delay) between calls. The Mailer
will still accept incoming (inbound) mail, but the chances of
another system getting through are very small.
Inbound-Only
Specifies that you do not want the Mailer to make any
outgoing calls during the event.
49
End event when no more mail to send
If you have an event with some restrictions on other systems
or do not allow users, it may be useful to enable this
option, forcing the Mailer to release all restrictions
enforced by the event as soon as there is no more mail to
send.
If new mail is entered that qualifies for mailing and the
event has ended (prematurely), it will be restarted.
Send to CM systems only
Forces the Mailer to only qualify those systems that have the
CM (continuous mail) flag set in their nodelist entry.
Send to non-CM systems only
Forces the Mailer to only qualify those systems that Do not
have the CM (continuous mail) flag set in their nodelist
entry.
Send to systems once only
Forces the Mailer to only deliver mail to a system once
during the event. If the event is interrupted or aborted, the
Mailer will remember which systems it has already delivered
mail to and when the event is restarted, it will not call
those systems again.
Assume you have mail to 1:135/20 and 2:310/11 during event A,
with this behavior enabled. On the first call to 1:135/20,
the Mailer sends its mail successfully. If the event is
restarted for some reason (user break, human caller, mail
received exit), the Mailer will not call 1:135/20 again, even
if there is new mail for that system.
Answer inbound calls
If you have specified that you want the Mailer to force the
modem to answer when it receives a RING message (see Modem >
Answer control), this setting ultimately determines whether
or not the Force answer string is sent to the modem, or if
the Mailer should simply ignore the RING message. This allows
you to control when the Mailer should answer inbound calls.
Inactive
The same as for eXternal events.
7.1.3 The @ event
The @ event is active whenever your system is not in another
mail event. The @ event is required. You do not have to tell
the Mailer to send mail during the @ event, but it must be
defined.
50
You can use it to send local and/or low cost mail whenever
the Mailer is not busy, etc. You can specify a schedule block
(see Mail routing), using the @ tag and define routing rules
for it just like any other mail event. If the Mailer does not
find a schedule block for the @ tag, it will still use any
global rules defined in the route file.
7.1.4 Overlapping events
Overlapping events are fully supported by the Mailer.
Event B starts at 05:00 with a duration of 01:00. Event A
starts at 05:01 with a duration of 00:15. The behavior for
event A includes Only execute event once and End event when
no more mail to send.
Event B will start at 05:00, after one minute, event A will
start and last for fifteen minutes (or end when there is no
more mail to send).
Once event A has ended, B will resume. This is a very
powerful and useful concept. It can be used to start
temporary or dynamic events within events that lasts for
several hours.
8 Mailer
The Mailer is the core program of FrontDoor. It is responsible for
sending and receiving messages and files; and optionally pass human
callers to a BBS or other interactive software. The Terminal function
is also located in the executable file of the Mailer and can be
reached from one of its menus.
Most functions of the Mailer are reached by holding down the <Alt>
key and pressing a key, A through Z.
8.1 Menus
Each function and menu of the Mailer will now be described.
8.1.1 Programs <Alt-P>
Message Editor <Alt-E>
Loads the message Editor.
Terminal <Alt-J>
Invokes the Terminal (it resides in the Mailer's overlay
file, FD.OVR).
51
Configure <Alt-C>
Loads the configuration program, FDSETUP.
Nodelist <Alt-N>
Loads the nodelist compiler, FDNC.
User keys <Alt-K>
Displays the 20 (24) user definable function keys and allows
you to select one.
DOS shell <Alt-Z>
Invokes a temporary DOS shell. Type EXIT and press <Enter> to
return to the Mailer. Packets created with any of the
temporary mail services function (File Request, Transmit
file, Send mail) will be discarded when you return and the
Mailer will rescan the contents of the NetMail folder.
Quit <Alt-Q>
Returns you to DOS or the batch file that first executed the
Mailer. The Mailer will return errorlevel 10 (User Break).
8.1.2 Utilities <Alt-U>
Active event <Alt-A>
Displays the settings for the currently active event.
Inbound history <Alt-I>
Invokes the inbound call (mail) history management function.
Outbound history <Alt-O>
Invokes the outbound call (mail) history management function.
Recent activity <Alt-R>
Shows you the last two days of general activity, failed
sessions, file requests, number of files/bytes sent and
received, etc.
Disconnect <Alt-X>
Allows you to manually terminate a call. This will also
re-initialize the modem.
Lock keyboard <Alt-L>
Allows you to lock the keyboard (and the Mailer) against
unauthorized use. The Mailer will still perform its duties
such as sending and receiving mail, etc.
52
You must enter the specified password to unlock the keyboard.
If the Mailer exits (due to mail received or an interactive
call is received), the keyboard lock status is retained and
when the Mailer is restarted, the keyboard will remain
locked.
Restart event <Alt-F7>
Forces the Mailer to rescan the message base and create new
mail packets. All previous temporary packet information is
discarded.
8.1.3 Mail <Alt-M>
Queue manager <Alt-B>
Allows you to manipulate the current mail queue. If no mail
event is active, the mail queue is empty. The mail queue is
described in a separate section.
Undialable manager <Alt-V>
Allows you to manipulate systems marked as undialable. This
is discussed in a separate section.
Forced poll <Alt-F>
Creates a priority entry in the mail queue for the specified
system. If an entry for the specified system already exists
in the queue, its status is set to priority.
>>> If the Mailer has to rescan the message base, the
temporary poll is removed from the mail queue.
Request files <Alt-G>
Allows you to create a temporary file request to the
specified system.
>>> If the Mailer has to rescan the message base, the
temporary file request is removed from the mail queue.
Transmit files <Alt-T>
Allows you to transmit files to the specified system. As with
the poll and request function (above), this is only a
temporary function.
>>> If the Mailer has to rescan the message base, the entry
is removed from the mail queue.
53
Send mail <Alt-S>
Allows you to create a temporary mail packet for the
specified system. You can choose to include all or
high-priority mail.
>>> If the Mailer has to rescan the message base, the entry
is removed from the mail queue.
8.1.4 Your profile <Alt-Y>
Answer
Allows you to toggle the manual answer status. This
option is only valid if you have enabled the manual
answer option in FDSETUP. Note that if you manually
toggle this option, the Mailer will honor the new setting
until it exits.
<C> Printer
Allows you to toggle the printing of new (incoming)
messages.
Human callers
Allows you to toggle whether or not you want the Mailer
to accept human callers. This option is only valid if you
are not running FD in mail-only mode.
Exit on mail
Allows you to toggle whether or not the Mailer should
exit when mail has been received. This option is only
valid if an errorlevel for received mail has been
specified in FDSETUP and the active event (if any)
specifies that the Mailer should exit when mail has been
received.
Which AKA <Alt-W>
Allows you to select a different AKA to operate under.
The specified AKA will be active until the Mailer exits
or you select a new AKA to operate under. Note that this
does not effect the AKA matching function of the Mailer.
8.2 Mail queue <Alt-B>
The mail queue function allows you to modify the status of one or
more mail packets, temporarily change the destination of mail
packets, and to unpack one or more packets.
54
Priority <F1>
Sets priority status on all selected packets. Packets with
priority status are always processed before packets with crash or
normal status.
Verbose <F2> or <Enter>
Displays more information about the highlighted mail packet such
as attached files, estimated transfer time, etc.
Crash <F3>
Sets crash status on all selected packets.
Hold <F4>
Sets hold status on all selected packets. Packets with hold
status will never be sent by the Mailer unless the destination
system calls in to pickup mail.
Select all <F5>
Toggles the selected status for all packets.
Destination <F6>
Changes the destination of all selected packets. When the Mailer
processes the mail queue, it will treat all active (non-sent and
non-held) packets as individual packets, including two or more
different packets destined for the same system. If a connection
is made (whether the destination system calls you or your system
calls it), however, all packets destined for that system will be
sent.
Unpack <F7>
Discards all selected packets from the queue. This will not
delete any mail from the NetMail folder.
Clear status <F8>
Sets normal status on all selected packets.
Clear busy retries <F9>
Sets the dial attempts for all selected packets to zero.
Exit <Esc>
Returns you to the Mailer's main screen.
Select <Space>
Toggles the selected status of the currently highlighted packet.
55
8.3 Call progress
When the Mailer has mail to send, it will step through the mail
queue and call the systems with mail packets waiting. Packets
with sent, failed, and hold status are ignored. These can,
however, always be picked up by the destination system if it
calls in.
After every unsuccessful (BUSY, NO CARRIER, etc.) call, the busy
retry counter is incremented until it reaches the value defined
in FDSETUP. Once the limit has been exceeded, the Mailer puts
hold status on the packet. If a connection is made but the actual
transfer fails, the resend retry counter is updated and once the
limit, defined in FDSETUP, is reached, the packet receives failed
status.
Press <Space> to force the Mailer to place the next outgoing
call.
8.4 Semaphore indicators
Every time the Mailer scans the NetMail folder, it looks for
unread messages destined for your system. If any are found, it
will enable the flashing "Mail" text in the bottom right hand
corner. Once the message(s) have been marked received (read), the
flashing mail text will disappear.
8.5 Undialable
When the Mailer reaches the resend (session failure, transmission
failure, etc.) retry limit for a system during an event. That
system is added to the undialable table with a "grade" of one.
When the "grade" reaches three, the system is considered
undialable and will never be called again (until you manually
"upgrade" it).
The undialable manager is accessed by pressing <Alt-V> from the
Mailer's main menu and allows you to "upgrade" a system's status,
add a system manually to the undialable list, and remove one or
more undialable systems.
The undialable system information is kept in NODIAL.FD in
FrontDoor's SYSTEM directory.
9 Editor
The Editor is the program used to write and read messages. It can be
invoked from the command line in DOS by typing FM followed by
<Enter>, or from the Mailer by pressing <Alt-E>.
The Editor has two "status" lines. The bottom status line is used to
display the current message, number of messages in the current
folder, the lowest and highest message numbers and the number of
messages remaining to the last message (last minus current).
56
The top status line shows the currently active AKA (address), the
current time and the folder you are in.
Most functions of the Editor are reached by holding down either the
<Ctrl> or <Alt> key and pressing a key, A through Z. If you press a
key that has no function assigned to it, it will display a message
saying "Press Alt-H for help" on the bottom status line.
Each function and menu of the Editor will now be described.
9.1 Main <Alt-M>
Create <Ins>
Allows you to create a new message in the current folder. You
will be prompted for the destination (user name and possibly a
network address), subject, etc.
Delete <Del>
Removes the currently displayed message. The Editor will ask you
to confirm that you really want to remove the message.
Reply <Alt-R>
Similar to the Create function. The destination of the newly
created message, however, is taken from the sender of the message
you are replying to. This function also allows you to quote the
original message, in whole, or selected parts.
NetMail reply <Alt-N>
Similar to the Reply function. If you are in a Local or
Conference folder, your message (the reply) will be placed into
the NetMail folder. The destination address of the message is
taken from either the origin line (Conference folders) or the
sender's name (Local folders).
<C> Reply comment <n/a>
Similar to the Reply function. It allows you to create a
follow-up message with additional comments to the same
destination as the original message.
Forward <Alt-L> or <Tab>
This function allows you to redirect a message to someone else.
It will also insert some additional information at the top of the
redirected message, indicating who the message was originally
from, etc. You can choose whether or not you want to overwrite
the original message with the forwarded (redirected) message.
The Forward function will also add the default message status to
the message and remove the Rcvd and Sent status bits if they were
set.
57
<C> View fax <n/a>
Invokes the external fax viewer, allowing you to view documents
attached to a fax cover page message.
Folders <Alt-F>
Allows you to change the active folder. You cannot change to
another folder while editing a message, but you can view the
folder list. The type of each folder is shown as 'E' for
Conference, 'L' for Local and 'M' for NetMail.
<C> The commercial version allows you to configure any folder with
NetMail status, the type will then be displayed as 'N'. The
shareware version only has one NetMail-type folder.
To select a folder, you can use the arrow keys to move the
highlight bar and then press <Enter>, or you can type the number
of the folder followed by pressing <Enter>.
Folder scan <Ctrl-F>
Scans all folders and indicates which folders have any message
number higher than the last read message. Typically, this means
that new messages have arrived in a folder since you last
accessed it.
DOS shell <Alt-Z>
Invokes a temporary DOS shell. Type EXIT and press <Enter> to
return to the Editor.
Leave editor <Alt-Q>
Returns you to DOS or to the Mailer, depending on how the Editor
was invoked. If you are editing a message, you will be asked
whether or not you wish to save it before exiting.
9.2 Edit <Alt-E>
Status <Alt-S>
Allows you to change the status of a message. See the separate
section about Message Status Bits for a detailed description of
this.
Subject <Alt-A>
Allows you to change the subject of a message. If you have a
message with file attaches and press <Alt-A>, the file attach
list will be processed again and if you specified wild-cards or
more than one file on the subject line, you will have to select
the files you want to send once again.
58
Text <Alt-T>
Allows you to edit the text (body) of a message. If you are
already in editing mode, this will bring up a secondary menu with
text editing related functions.
Destination <Alt-D>
Allows you to change the destination of a message. This will add
the default message status bits as well as the Local bit to the
message and remove the Rcvd and Sent status bits if they were
set.
As opposed to the Forward function, using <Alt-D> will not result
in any text being added to the message body (forwarding info).
Toggle <Ctrl-F2>
Brings up the toggle menu.
9.2.1 Edit mode <Alt-T>
Import file <Alt-F2>
Allows you to import an ASCII file into the text. The
contents of the file will be inserted at the current cursor
position.
Insert line <Ctrl-Enter>
Inserts a blank line after the current line. The cursor will
remain in the same position.
Line to buffer <Ctrl-B>
Adds the current (where cursor is positioned) line to end of
the temporary buffer and moves the cursor down one line. The
last eighty lines of deleted/marked text is always retained
in a temporary buffer and can be reinserted with <Alt-F1> or
<Esc>.
Delete word <Ctrl-W>
Deletes the word to the right of the cursor.
Go to line # <Ctrl-G>
Allows you to specify an absolute line number to place the
cursor on.
Delete to EOF <Ctrl-T>
Deletes all text from cursor to end of message.
59
Find <Alt-F5>
Searches for the specified string, and if found, places the
cursor on the first character of the found word.
Find & Replace <Alt-F6>
Allows you to replace a string with another. Note that this
function will restore the cursor position whereas the Find
function will not.
Re-format <Alt-F8>
Reformats a block of text (from cursor to the next blank
line) and removes any hard CRs from the reformatted lines. It
will add a hard CR to the end of the reformatted block.
<C> Line drawing <Alt-F4>
Allows you to draw lines and boxes using a variety of line
sets.
Undelete <Alt-F1> or <Esc>
Inserts the last deleted line at the current cursor position.
The last eighty lines of deleted/marked text is always
retained in a "scratch" buffer.
Save & exit <Alt-F10> or <Ctrl-Z>
Save (or discard changes to) the current message.
9.2.2 Toggle <Ctrl-F2>
Translation <Ctrl-X>
Toggles the state of the translation tables.
Hard CRs <Ctrl-C>
Toggles whether or not hard CRs in the message text should be
displayed.
Echo info <Ctrl-E>
Toggles the state of the echo info. This function is only
available in Conference folders.
9.3 Utilities <Alt-U>
Survey <Alt-F9>
Invokes the message survey function.
60
<C> Force rescan <n/a>
Forces the Mailer and other Editors to rescan the NetMail folder.
Move/copy <Alt-J>
Allows you to move or copy the current message to another folder.
Message to file <Alt-V>
Exports the current message to an ASCII file. If the specified
file already exists, you will be asked if you want to overwrite
its contents or append the message to the end of the file.
Print message <Alt-I>
Adds the current message to the print queue. Messages added to
the queue are printed in the order they were added. If you
attempt to leave the Editor while messages are still being
printed, it will ask you to confirm your choice to exit. If you
choose to exit, the Editor will cancel the remaining messages in
the print queue.
>>> The Editor does NOT use any external print spooler, such as
DOS' PRINT program.
Renumber <Alt-B>
Renumbers the messages in the current folder so that there are no
gaps in the numbering. This function is not available in Hudson
Message Base-type folders.
Change username <Alt-G>
Allows you to change the current user profile.
Change address <Alt-W>
Allows you to change the active network AKA (address). This will
also change the address that is inserted in origin lines in
Conference folders.
Change origin <Alt-O>
Allows you to change the active origin line. Whether or not an
origin line is appended to messages that you create is determined
by the echo info setting (Conference folders only).
<C> Drop marker <Ctrl-D>
Allows you to drop a marker (0-9) on the current message. You can
later return to these markers by pressing <Alt> in combination
with the digits 0 through 9.
61
9.4 Purge <Alt-P>
The options on the Purge menu allow you to remove one or more
messages in the current folder, based on the various criteria, as
described below.
From user
Purge all messages FROM the specified user.
To user
Purge all messages TO the specified user.
From net address
Purge all messages that originated from the specified address.
To net address
Purge all messages destined for the specified address.
Received
Purge all received (read) messages.
Sent
Purge all sent messages.
Age
Purge all messages older than the specified date.
9.5 Help <Alt-H>
Keyboard help <Ctrl-F1>
Displays a brief help screen about various keys (cursor keys,
etc).
Macro keys <Alt-K>
Displays the contents of the 20 (24) macro keys available in edit
mode.
Program notice <Ctrl-A>
Displays the program version, copyright and registration
information.
Show notes <Alt-X>
Displays extended information about the currently displayed
message. The extended information is stored behind Ctrl-A (ASCII
1, SOH) characters in the message text.
62
<C> Remote Info <Alt-Y>
Displays information about the originating or destination system.
9.6 Entering new messages
Press <Ins>. The screen will be refreshed and you will be
prompted for the destination. If you are in the NetMail folder,
you can use the name/address look-up function to specify the
destination of the message; if you are in a Conference or Local
folder, you must type the destination manually.
Once you have specified the destination of a message, you will be
prompted for the subject (Re:). If you want to send or request
files to/from another system, select the proper status bits and
specify the file data in the subject line. Note that the default
message status (specified in FDSETUP) is always added, but can be
changed.
Enter the message text and press <Ctrl-Z> or <Alt-F10> to save
the message.
9.7 Message survey <Alt-F9>
The Survey function is used to perform global operations on a
range of messages such as moving, printing, copying, deleting,
etc.
When you press <Alt-F9> for the first time in a folder, the
Editor will scan all the messages in the folder and build a list
of them. That list is kept in memory until you press <Alt-F9> in
another folder, or when the Editor, for some reason, has to
rebuild its internal message list for the folder. If you remove,
add or renumber messages the list will be updated accordingly, so
no rescan is necessary.
9.7.1 Main menu
Kill <Del>
Removes all selected messages.
Print messages <F3>
Prints all selected messages.
Range select <F4>
Allows you to select a range of messages matching a certain
criteria.
Select all <F5>
Allows you to select all messages in the folder.
63
Move <F6>
Allows you to move all selected messages to another folder.
Copy <F7>
Allows you to copy all selected messages to another folder.
Export to file <F8>
Allows you to export all selected messages to an ASCII file.
Go to message <Enter>
Returns to view mode and makes the highlighted message the
current message.
Select <Space>
Toggles the selected status of the highlighted message.
Exit <Esc>
Returns you to view mode.
9.7.2 Continuous tagging
If you activate Caps Lock, messages can be tagged (selected)
by moving the bar with the arrow keys.
9.7.3 Range select <F4>
The range select function allows you to select a range of
messages matching a certain criteria. Most of the functions
only require a partial match with the selected search
criteria.
From user <F2>
Selects all messages from the specified user.
To user <F3>
Selects all messages to the specified user.
Originating address <F4>
Selects all messages originating from the specified address.
Destination address <F5>
Selects all messages destined for the specified address.
64
Text <F6>
Selects all messages containing the specified search string
in the message body.
Date <F7>
Selects all messages between two dates.
Re: <F8>
Selects all messages matching the specified subject.
Rcvd <F9>
Selects all messages with received (read) status.
Sent <F10>
Selects all messages with sent status.
Exit <Esc>
Returns you to the main menu of the Survey function.
9.8 Keyboard macros
The keyboard macros are located on <F1> - <F10> (12) and <Shift
F1> - <Shift-F10> (12). When a macro key is pressed, the Editor
will insert its contents at the current cursor position. The
following macros are supported:
Sequence Expands to Key in FM
---------------------------------------------------------------
~~ ~
~| |
| CR <Enter>
~B TAB <Tab>
~> Cursor one step to the right <Right>
~< Cursor one step to the left <Left>
~^ Cursor one line up <Up>
~V Cursor one line down <Down>
~G Cursor to top of message <Ctrl-PgUp>
~H Cursor to end of message <Ctrl-PgDn>
~F Reformat paragraph <Alt-F8>
~L Insert line <Ctrl-Enter>
~Y Delete line <Ctrl-Y>
~} Delete from cursor to EOL <Ctrl-End>
~T Delete from cursor to EOF <Ctrl-T>
~S Save message and keep original <Ctrl-Z>, 'N'
~# Save message and delete original <Ctrl-Z>, 'Y'
~U Current username
~D Recipient of original message
~O Sender of original message
~A Subject (re:) of original message
~C Date of original message
65
~J Originating address of original msg
~K Destination address of original msg
~! Invoke DOS shell <Alt-Z>
~E<prog><parm>; Execute program
~X<filename>; Export to file <Alt-V>
~I<filename>; Import file <Alt-F2>
~R<filename>; Import file and remove it
Examples
The sequence "~Edir /w>x.bak;~Rx.bak;" (without the quotes)
will:
o Execute "DIR /W>X.BAK"
o Import X.BAK into the message text
o Remove X.BAK
Note that the semi-colon (;) is NOT optional for the
"Execute" and "Import" macros. It determines the end of the
program name and its parameters and/or the end of the name of
the file to import.
The sequence "|~T|~B~B~BRegards,|~B~B~B~U|" (without the
quotes) will:
o Insert a CR
o Delete the text from the cursor to the end of the
message.
o Insert another CR
o Insert three TAB characters (equivalent to pressing
<Tab> three times).
o Insert the text "Regards," without the quotes
followed by a CR.
o Insert three TAB characters (equivalent to pressing
<Tab> three times).
o Insert the current user's name followed by a CR.
E.g. ..
<message text>
..
Regards,
John Doe
9.9 Carbon copies (CC)
The Carbon Copy function, is more or less what the name implies.
A function that allows you to send the same message to two or
more recipients; a distribution list. The CC function is only
active in the NetMail folder. CCs can also be used for File
Attach and File Request messages.
66
To use the CC function, put the text "cc:" (case does not matter)
followed by one or more SysOp names or system addresses,
separated by a comma, at the top of the message. Once you select
to save the message, the Editor will scan the beginning of the
message text for CC: and if found, process each element of the CC
list. You can have more than one line with CCs.
E.g. cc: bremin,#bodger,samet
cc: howard,kasza,wallin,1:135/4
Note that if you create several messages using the CC function,
editing any of them will not reactivate the CC function. The
Editor will only process a CC list the first time you enter a
message (i.e. a new message).
9.9.1 Hidden CCs
To hide a recipient in a CC list, put the pound (#) character
in front of the SysOp name or system address.
E.g. cc: #1:135/20,#1:135/990,2:310/11
9.9.2 Using files as input to CCs
You can also specify a file containing SysOp names or
addresses to the CC function.
E.g. cc: @betanote.txt
9.9.3 Address expansion
All addresses in a CC list can be entered in short form, and
several macros are recognized.
cc: MYNET
Will process your whole net and add every system to the CC
list. Note that the previously supported notation
"MYNET/node" (eg. MYNET/12) is no longer supported.
cc: 2:310/*, 1:135/*
Will include all systems in net 2:310 and 1:135.
cc: 2:270/17.*
Will include all listed point systems under 2:270/17.
<C> 9.10 Blind Carbon Copies (BCC)
Blind Carbon Copies are identical to normal Carbon Copies with
the exception that none of the recipients will know that the
message is a Carbon Copy.
67
<C> 9.11 Crossposting (XC)
Although CCs are not supported for Conference and Local folders,
there is an additional function that provides you with a method
of broadcasting the same message to two or more folders. This
function is called Crossposting.
To use the XC function, put the text "xc:" (case does not matter)
followed by one or more numbers, separated by commas. Each number
represents a folder number where you want the message
cross-posted. If your folder list looks like:
1 BNU
2 COMP.SYS.IBM.PC
3 FDECHO
4 TSECHO
5 NETSYSOP
And you put "xc: 1,3,5" in a message in folder two. The resulting
messages will have
* Crossposted in BNU
* Crossposted in COMP.SYS.IBM.PC
* Crossposted in FDECHO
* Crossposted in NETSYSOP
At the top of each message. The target folder is excluded from
the list. Ie. " * Crossposted in BNU " will appear in each
message not going to the first (BNU) folder.
10 Terminal
Although FrontDoor was designed primarily as an e-mail system, it
also features a powerful terminal emulator, hereafter called the
Terminal. The Terminal features very accurate and efficient Terminal
emulation and file transfer protocols; and several other features
found in expensive and/or complex communications packages.
The Terminal is invoked by pressing <Alt-J> from the Mailer's main
menu, or by specifying /TERM on the command line when it is started.
You can also choose to run the Mailer in terminal-only mode, in which
case the Terminal is invoked up directly when you start it.
Most functions of the Terminal are reached by holding down the <Alt>
key and pressing a key, A through Z. If you press a key that has no
function in the Terminal, it will display a message saying "Press
Alt-H for help".
68
10.1 Menus
Each function and menu of the Terminal will now be described.
10.1.1 File <Alt-F>
The file menu contains functions to manipulate macros, upload
and download files, transmit ASCII files, invoke DOS shell
and Editor, etc.
Download files <Alt-G>
Receive one or more files from the remote system.
Upload files <Alt-T>
Transmit one or more files to the remote system.
Transmit ASCII file <Alt-A>
Allows you to transmit an ASCII file to the remote. You will
be able to select the default inter-character delay and line
translation. It is possible to create simple script or macro
files by using this option.
Macro management <Alt-V>
Allows you to create and maintain your macro key sets. Use
this function to make a different macro key set the active
set.
Profile management <Alt-E>
Allows you to create, maintain, and select IEMSI session
profiles. IEMSI is discussed in a separate section.
Command history <Alt-U>
The Terminal records your last ten typed lines. When you
press Enter, it removes the oldest entry and adds the newly
typed line to the list. You can choose any one of the ten
history entries and retransmit it to the remote.
Editor <Alt-I>
Invokes the program defined in the Terminal > Miscellaneous >
Editor field in FDSETUP. You will be asked for optional
command line parameters, they are stored for the remains of
your Terminal session. This could also be used to bring up
external protocol menus, etc.
Note that the FOSSIL driver is deactivated when leaving the
Terminal and reactivated upon returning to the Terminal. This
is to make sure FrontDoor maintain control of the FOSSIL
driver even when loading other programs that could possibly
leave the FOSSIL driver in a non-desirable state.
69
DOS shell <Alt-Z>
Invokes a temporary DOS shell. Type EXIT and press <Enter> to
return to the Terminal.
Leave Terminal <Alt-Q>
Depending on how the Terminal was invoked, this will return
you to the Mailer's main menu or to DOS. If you are connected
to a remote system when you press <Alt-Q>, you will be asked
to confirm that you want to hang up.
10.1.2 Line settings <Alt-L>
The line settings menu contains your current communications
parameters. You cannot reach the options of this menu unless
you press <Alt-L>. Most of the options in this menu are self
explanatory, only the not so obvious options are explained
here.
BPS
The current DTE baud rate. If you have enabled the "Lock
port" option in FDSETUP, this field will contain "Fixed" and
you will not be able to change it.
Wraparound
Determines whether or not the Terminal should place the
cursor on a new line when it is positioned at the rightmost
position of the screen and a character is received. This
should be set to On in most situations. There are however
VT100/VT52 applications that require this setting to be Off.
Note that a CR/LF will force a new line even if this is set
to Off.
CR expansion
Determines how a received CR character should be processed.
If set to CR, no expansion is made. If, however, it is set to
CR/LF, the Terminal will expand all received CR characters to
CR/LF.
Local echo
Some on-line services do not echo the characters you type. It
may be necessary to enable this option to see what you are
typing. If the on-line service you are using does echo the
characters you type and you enable this option, you will get
duplicated characters. E.g. "HHEELLLLOO!!".
70
Emulation
Allows you to choose between ANSI, VT100, VT52 and TTY (no)
emulation. Note that the default for ANSI emulation is to
support AVT/0+ (AVATAR/0+). This is a Terminal emulation
protocol designed by G. Adam Stanislav. It is extremely fast
and very efficient.
Translation tables
If enabled, the Terminal will use the Terminal translation
tables to filter any received characters.
Auto-Zmodem downloads
The Terminal monitors received characters for the special
sequence a Zmodem transmitter sends when a Zmodem file
session is started. If it detects this start-up sequence, it
will automatically invoke the Zmodem receiver. If you disable
this option, you must use <Alt-G> (Download) to receive files
using the Zmodem protocol.
Allow AVT/0 sequences
Determines whether or not you want to accept AVT/0+ emulation
sequences when you are in ANSI emulation. Since AVT/0+ is
based upon certain control characters, you may want to
disable this option if you are using programs like Doorway,
etc. which frequently transmits control characters.
Clear on Form Feeds
Determines whether or not the Terminal should clear the
screen when receiving a Form Feed (FF, ASCII 12) character
from the remote.
Interactive EMSI
Determines whether or not the Terminal should attempt to
establish IEMSI sessions with systems you call. IEMSI is
completely transparent and should not cause any problems.
IEMSI is described in a separate section.
10.1.3 Session <Alt-S>
Capture <Alt-C>
Allows you to capture characters, as they appear on the
screen, to a disk file, or logging it to a printer. Since the
Terminal filters out NUL characters (ASCII 0), they will
never appear in a capture file.
Other characters and control sequences may not appear either,
depending on what terminal emulation protocol is active at
the time.
71
Conversation mode <Alt-N>
The conversation mode function splits the screen in half,
creating two windows or sections on the screen. Data received
from the remote system will be displayed in the top section,
while the characters you type will be displayed in the bottom
section.
Dial <Alt-D>
Allows you to dial a system in the nodelist. This function is
disabled if no nodelist files are detected when the
Terminal/Mailer is started. Note that you cannot queue
numbers dialed via the nodelist.
Manual dial <Alt-M>
Allows you to enter a number manually, which will then be
dialed until you press the <Esc> key or a connection has been
made. Note that you cannot queue manually entered numbers.
Disconnect <Alt-X>
Disconnects the current call and displays the elapsed time.
Phone directory <Alt-P>
Brings up the phone directory manager.
Reset timer <Alt-R>
Resets the on-line timer. The timer is automatically reset
when a new connection is made.
Scroll back buffer <Alt-B>
Allows you to view data that has scrolled off the screen. The
amount of data stored in the scroll back buffer is configured
in FDSETUP.
>>> If you invoke the Phone Directory and there is
insufficient memory available, the Terminal will dispose
of the memory allocated to the scroll back buffer in an
attempt to free sufficient memory to invoke the Phone
Directory.
Send BREAK <Alt-W>
Sends a (short) BREAK signal to the modem. Consult the
documentation for your modem regarding BREAK signals. This is
often used to terminate inquiries to commercial on-line
systems, etc. but can be treated differently by your modem.
Clear screen <Alt-J>
Clears the screen and moves the cursor to the upper left-hand
corner.
72
<C> Initialize modem <Alt-Y>
Transmits the Init-1..Init-3 modem strings as configured in
FDSETUP under Modem > Command strings, followed by the Init
string defined under Terminal > Miscellaneous, to attempt to
initialize the modem.
10.1.4 Options <Alt-O>
Most Terminal emulators and communications packages have a
status line, either at the top or at the bottom of the
screen; on which they display various information about
settings and the current connection. FrontDoor's Terminal
does not have a status line, hence the options menu.
10.2 Keyboard macros
Depending on how many function keys you have on your keyboard,
you will have access to 20 or 24 keyboard macros for every macro
set. You can have over 60,000 macro sets defined, but only one
can be active at any time. The macro management function is
reached by pressing <Alt-V>.
The keyboard macros are located on <Shift-F1> - <Shift-F10> (12)
and <Ctrl-F1> - <Ctrl-F10> (12). When a macro key is pressed, the
Terminal will send the data specified as the macro string,
uninterpreted, to the remote system. The following characters
have special meaning when specified in a macro string:
Sequence Expands to
----------------------------------------------------
~~ ~
~| |
| CR
~B TAB
~! One second pause
~P The current password as defined in the Phone
Directory or the current IEMSI Profile's
password.
10.3 Raw mode
The IBM PC keyboard generates two characters for every key you
press. The first character is called the ASCII code, and the
second character is called the scan code. Only the ASCII code is
transmitted to the remote system by default. There are, however,
some situations which require the Terminal software to transmit
both codes. The AVATAR emulation protocol and the Doorway
programs both require the complete codes (two characters) to
identify certain keys; function and arrow keys in particular.
>>> Once raw mode has been enabled (by pressing the Scroll Lock
key), you cannot reach any of the Terminal's regular
functions. Raw mode is disabled by deactivating Scroll Lock.
73
10.4 Keypad modes
The VT100 and VT52 emulation protocols require that the cursor
keys transmit different codes depending on the state of the
remote application. Most on-line services follows the VT100
recommendation for this, but several Editors and other programs
have their own ideas of how this should be handled.
If you enable the numerical keypad (Num Lock), the white cursor
keypad will transmit the numerical application codes for
VT100/VT52. If you have an extended (101/102) keyboard, the grey
cursor keys will not follow the numerical keypad setting.
By using the <Shift> key together with the white cursor keypad,
you can negate the setting of Num Lock temporarily. Ie. if Num
Lock is enabled and you press <Shift-Up> (8), the Terminal will
transmit the up key sequence to the remote. If Num Lock is
disabled and you press <Shift-Up> (8), the Terminal will transmit
the numerical application keypad sequence for 8.
10.5 PC keyboards
When the remote (host) requests that the Terminal enters
numerical application keypad mode, the Terminal automatically
enables Num Lock. On extended (101/102) keyboards, this will also
enable the Num Lock LED. The Num Lock LED on IBM-PC (standard)
keyboards will not change by doing this. The Options, <Alt-O>,
menu should correctly reflect the proper state of Num Lock
anyway.
10.6 Phone directory <Alt-P>
The phone directory allows you to define up to 200 (400 in the
commercial version) numbers in addition to those stored in the
nodelist database. The Terminal keeps the internal phone
directory in a file named TERMPHON.FD, which is located in the
SYSTEM directory.
The top menu in the phone directory has nine options.
Clear queue <F1>
Removes the queue (Q) status from all entries in the phone
directory. If no entries are listed in the queue, no action is
taken.
Dial <F2> or <Enter>
Adds the current (highlighted) number to the queue and proceeds
to the dial function. If no connection is made, the Terminal will
proceed to the next number in the queue. If no other numbers
exists in the queue, the Terminal will wait the defined (in
FDSETUP) number of seconds before trying again. You can abort
dialing by pressing <Esc>.
74
Edit existing entry <F4>
Allows you to change an existing entry.
Purge <F6>
Removes all entries marked for deletion (small square) from the
phone directory. There is no way to recover a removed entry, so
use this option with caution.
Toggle queue status <F7> or <Space>
Adds/removes the current (highlighted) number to the queue.
Sort (and purge) <F8>
This option is similar to the Purge option with one difference.
It will also sort the phone directory in ascending order, based
on the name field.
Add entry <Ins>
Allows you to add a new entry to the phone directory.
Mark for deletion <Del>
Marks an entry for deletion (small square). No other action is
taken. You must use the <F6> or <F8> function to remove entries
marked for deletion.
10.6.1 Queue status
The queue status is only retained while you are in the phone
directory. Once you return to the Terminal, the phone
directory is removed from memory.
10.6.2 Adding/changing entries
When you press <F4> (Edit) or <Ins> (Add), the edit screen
will appear. Press <F10> to save the entry and <Esc> to
abandon the entry/changes.
10.7 Inactivity timer
If you are not connected to another system, the Terminal function
will be terminated automatically after ten minutes of inactivity,
if there is no carrier signal. The timer is reset if a key is
pressed and when the carrier signal changes.
75
10.8 File transfers
When you transmit or receive files in the Terminal, it will
automatically set the line parameters to no parity, eight data
bits and one stop bit. Once the transfer is completed, the line
parameters will be reset to whatever values they had prior to the
transfer.
10.9 On-line timer
The on-line time displayed in the Options, <Alt-O>, menu shows
the elapsed time of the current connection in hours and minutes.
It is not intended as a precise mechanism for cost calculations,
etc. but will give you a rough estimate of the time you have
spent on-line.
11 Miscellaneous
This chapter contains functions and options that are global to all
programs in FrontDoor.
11.1 Destination of messages
When you are prompted for an address and/or SysOp name for a
message, you can use the look-up function. This is true for both
the Mailer, the Editor, and the Terminal. The Editor only allows
you to use the look-up function for messages written in the
NetMail folder.
You do not have to use the look-up function, of course. You can
enter a short form address, such as 10 (for node 10 in your own
net), .1 (for point one in your own point net) in which case the
SysOp's name is taken from the nodelist data. This is one of the
most flexible functions in FrontDoor.
11.1.1 Name lookups
If you specify "Homrig" as the destination, you will be
prompted to select from a list of all users with a last name
matching "Homrig" (Homrighausen for example). The network
address will also be taken from the name you select.
11.1.2 Address browsing
To enter the address browse mode, specify an incomplete
address, such as "2:?", "2:270/?" or "2:270/17.?". You can
then browse through all zones, regions, networks and
pointlists known to your system.
If you press <Enter> (and the input field is blank) when you
are prompted for an address, you will be placed in browse
mode in your own net.
76
11.1.3 Address macros (NAMES.FD)
You can also create a file containing short names which
expands into a full address/SysOp name. The macros are
located in a file called NAMES.FD which must be placed in the
SYSTEM directory. The format of NAMES.FD follows:
<alias>,<user name>,<address>[,<subject>]
ALIAS The name you want to use for the macro.
USER NAME The name you want FM to place in the TO: user
name field.
ADDRESS The network address you want as the destination
when using the macro.
SUBJECT The fourth and optional parameter can be used to
insert a default subject in FM and also in the
"File(s):" field in FD when using the "Mail
services" options "Request files" and "Transmit
files".
E.g. oci,James Smith,1:132/300
am,AreaMgr,2:512/1,MyAreaMgrPassword
joho,joaquim homrighausen,2:270/17
jd,Jon Doe,9:333/111
Would allow you to place "*oci", "*am", "*joho", and
"*jd" anywhere you are prompted for a network address or
user name, including carbon copies (CC).
A special format can also be used to automatically address
messages to UUCP and INTERNET gateways. By putting a
commercial at character (@) as the first character of the
user name field (second field), you indicate to FM that the
macro should receive special treatment.
E.g. dn,@INTERNET/jd@jon.doe.lu,2:241/999
Would place "INTERNET" in the message header's
TO: field and address the message to 2:241/999.
On the first line of the message text, it would
put "TO: jd@jon.doe.lu".
If no forward slash (/) is found in the user name
field (where "INTERNET" is above), the Editor
defaults to putting "UUCP" in the message
header's TO: field.
This cannot be used for carbon copies (CC).
77
12 File Requests
This section will explain and discuss the various aspects of File
Requests. There are two types of Requests, File Request and Update
Request. The latter is basically a File Request that triggers a
mechanism to only send the requested files if they are more recent
than those found on the requesting system. Two basic terms have to be
explained and understood:
Outbound Request
A File or Update Request created and transmitted by your system
to another, remote, system.
Inbound Requests
A File or Update Request transmitted by another system to your
system.
There is no mechanism in the Mailer to control how an outbound
Request is treated by the remote system. The Mailer strictly deals
with controlling the access to and security of your system (inbound
Requests).
12.1 Outbound Requests
When you want to Request one or more files from a remote system,
you may do so using several different methods:
1. By using the Editor and entering a message with File or
Update Request status. The files you want to request from
the remote system are listed on the subject (Re:) line of
the message and you set FilReq or UpdReq to indicate that
the Mailer should give the message special treatment.
2. By using the Mailer's temporary mail services, which are
accessed with <Alt-M> from the main menu. Whether or not
the Request is treated as an Update Request or File
Request is determined by how you specify the filename(s)
in the File(s): field. If you include a path, the Mailer
will treat it as an Update Request, otherwise, it will be
treated as a File Request.
Requests created this way will not remain if the Mailer
terminates (for one reason or another) as they are
intended for temporary, quick and dirty, purposes only.
3. Use a robot utility, such as XRobot, to create the File
or Update Request message(s).
Note that an Update Request with no matching target, that is, you
have attempted to Update Request a file that does not exist on
your system, is automatically converted to a File Request.
78
12.2 Requesting files with a password
Since files and directories can be protected with passwords, it
may be necessary for you to present a password in order to
request certain files from a remote system.
To add a password to an outbound File or Update Request, you
simply put the password preceded by a space character and a '!'
character. Ie. <filename> !<password>. Regardless of whether you
are creating the Request with the Editor or from the Mailer's
Request function, this is the format used to specify passwords.
12.3 Update Requests
As mentioned before, an Update Request is really a File Request.
The difference is that an Update Request is used to "update" a
file that already exists on your system. The mailers accomplish
this by transmitting the date and time of the existing file, the
system that processes (receives) the Update Request then compares
this with the requested filemask and sends any matching file that
has a later date and time.
12.4 Inbound Requests
You can control which directories should be accessible from the
"outside world" during a Request. This is accomplished by telling
the Mailer which directories should be searched for matches. How
the Mailer handles inbound Requests depends on how you have
configured the Mailer > File requests section in FDSETUP.
12.4.1 Request modes
There are three different modes which decide how the Mailer
treats a Request from a remote system. This is configured in
the Mailer > File requests > Request limits section in
FDSETUP.
1. Anyone can request. This means that the Mailer will
allow any system to Request files from your system,
subject to event behaviors and other modifiers.
2. Systems in nodelist can request. Similar to (1), but
the Mailer will only process Requests received from
systems that are listed in your nodelist database.
3. No requests. Forces the Mailer to ignore any received
Requests, effectively disabling the ability to
request files from your system.
79
12.4.2 Directory listings
The directories that the Mailer search during an inbound file
request are configured in the Mailer > File requests >
Filenames section of FDSETUP. Two files can be specified.
Each file is a plain vanilla ASCII file with one directory
(complete path) per line; this is NOT a filemask. All files
in the specified directories will be available for file
request. No other directories than those specified in these
files will be searched.
>>> The "List" file is searched during unsecure sessions
(i.e. those with systems that there is no session level
password for). The "SecList" file is searched during
secure sessions. This allows you to have different files
available depending on whether or not the session is
password protected. If no "SecList" file has been
specified, the Mailer will use the "List" file.
12.4.3 Alias listings
Alias files are used to set-up something often referred to as
"Magic filenames". That is, the requesting system requests a
specific name that expands into one or more files. The alias
files are scanned before the list of requestable directories
(see above), and if a match is made, the Mailer does not
search the other lists. The two alias files are configured in
the same section as the list of requestable directories.
The alias file is a plain vanilla ASCII file with one alias
definition per line.
E.g. FRODO C:\FILES\FRODO\FDKIT.ARJ
XR C:\FILES\FRODO\XROBOT.ARJ
RA C:\FILES\RA\RA*.ARJ
MYSECRET C:\TEST1.ARJ C:\TEST2.ARJ
The remote system can request FRODO, XR, RA, or MYSECRET and
get the above specified files. Files listed as alias names do
not have to be located in requestable (see above)
directories.
Just like you can specify different requestable directories
depending on whether or not the session is password
protected, you can specify two separate alias files.
12.4.4 Response message
In the event that the Mailer cannot satisfy a file or update
request for one reason or another, it will return a message
to the requesting system telling it why the request(s) could
not be satisfied.
80
If you have specified a filename for the Message option,
under Mailer > File requests > Filenames, the Mailer will
attempt to open the specified file and append its contents to
the end of the automatically generated response message.
12.4.5 Limiting Requests
You can choose to place a limit on how many files, how many
kilobytes, and/or how long a request may take. This allows
you to fine tune your system for maximum efficiency. The
request limits are configured in the Mailer > File requests >
Request limits section of FDSETUP.
<C> Stop after first match
Prevents the Mailer from searching all requestable
directories as soon as one match has been made for a given
request.
Maximum match (files)
The maximum number of files your system will send during one
Request session. If the remote system requests an alias
filename that expands to two files, the request is counted as
two files. A setting of zero disables this feature.
Maximum time (minutes)
The maximum time the resulting files of a request may take to
transfer. Before sending each file, a check is made to see if
sending the file will cause this limit to be exceeded. If so,
the file is skipped and the next file in the list will be
checked. A setting of zero disables this feature.
Maximum size (KB)
The maximum amount of data your system will send during a
request session. Note that if the remote system requests an
alias filename that expands into two files, the size of both
files is checked. A setting of zero disables this feature.
Minimum speed (BPS)
The minimum baud rate required to allow Requests. If the
current connection is at a lower speed, Requests will not be
honored.
12.4.6 Limited hours
You may also choose to limit the access of your request
functions to certain days and certain hours of those days.
Limited
Enables limited hours.
81
Start
The time of day when your system should start honoring
Requests. This setting can only be changed if the Limited
hours option is enabled.
End
The time of day when your system should stop honoring
Requests. This setting can only be changed if the Limited
hours option is enabled.
Days
Defines on which days your system will honor requests.
12.4.7 Event restrictions
Ultimately, whether or not your system will honor requests is
controlled by the current event's behavior. If the Allow file
requests option for an event is set to NO, requests will not
be honored.
12.4.8 Protecting files and directories
You may want to protect access to certain files and
directories, just like another system may require you to
present the proper password to request one or more files. See
"Outbound Requests".
The Request Manager in FDSETUP is used to protect Inbound
Requests.
Filename/Directory
Defines the filename/directory you want to protect. This
is NOT an exclusive name. If you set this field to
C:\HIDDEN\ and define a password, all Requests that
result in files being sent from C:\HIDDEN\ are protected.
If you set this field to MYSECRET.ARJ and define a
password, the file MYSECRET.ARJ will only be sent if the
requesting system presented the proper password.
Password
Defines the password for the specified file/directory.
The requesting system have to present this in its request
to get the file(s). These passwords are treated case
insensitive.
Entries with inactive status in the Request Manager are
ignored by the Mailer. Note that Alias definitions can also
be protected by placing the name of the Alias definition in
the Filename/Directory field.
82
<+> 12.4.9 Request processor
A request processor is basically a slide-in replacement for
the Mailer's internal code to handle file requests. The main
difference is that it is an external program and can thus be
easily replaced and updated. Other advantages include being
able to access proprietary file database formats used by some
BBS packages, and to handle searches for files located on CD-
ROM drives which are notoriously slow if you access them
directly.
The Request processor is configured in the Mailer > File
requests > Request processor section of FDSETUP. The Name
field is the program to invoke (i.e. the name of the request
processor) and any parameters it may require. Several macros
can be specified to give the request processor access to some
of the Mailer's internal variables and data. The Enabled
field simply determines if the Mailer should call the request
processor or if it should handle file requests internally.
The Swapping option determines if the Mailer should swap its
program image out of memory prior to invoking the request
processor.
The available macros are described in the FrontDoor
Developer's Kit (FDDEV) and the specific macros you have to
use with the request processor should be covered by its
documentation. There are at least two request processors
available for FrontDoor at the time of publication; one works
with the Maximus BBS software and the other with
RemoteAcccess 2.x.
13 Swapping
Both the Editor and the Mailer require over 220 KB of RAM. If you
shell to DOS, or load another program from the Mailer, this memory is
not available for other programs. You can therefore force the Editor
and the Mailer to swap their program image to disk or EMS/XMS memory.
If you have specified that you want the programs to use XMS/EMS
memory for swapping but there is not sufficient XMS/EMS memory
available, the swap image is written to disk. The swap file is placed
in the SYSTEM directory and removed when you return to the program.
If you enable swapping for the Mailer, it will be swapped out when
you invoke a DOS shell and when you invoke other programs. The Mailer
swap setting also affects the Terminal. The Terminal will not flush
its scroll-back buffer to disk if any type of swapping is enabled for
the Mailer.
Once the swap image has been created and written to XMS/EMS memory or
a disk file, all memory used by the program is freed except between
three and five KB which will always remain in memory.
83
13.1 Complete path specifications
To avoid problems when you enable swapping, it is recommended
that all the filename and directory specifications under Global >
Filenames in FDSETUP contain complete path specifications,
including a driver specifier.
If you choose to swap to a disk file, it is further recommended
that you specify a complete path to where you want the swap files
to be placed (Global > FileNames > Swapping).
13.2 Loading programs in a DOS shell
Make sure that you do not load any TSR (Terminate and Stay
Resident) programs, such as DOS' PRINT and SideKick, when you are
in a DOS shell. Failure to follow this advice may lead to system
lockups when you attempt to return from the DOS shell.
14 CRT environments
All programs in the FrontDoor package are screen environment aware
and most of them can adjust to most (if not all) screen sizes as long
as the current screen mode has 80 or more columns (horizontally).
If you have an EGA or VGA card that allows you to set the screen mode
to something like 132x28 and you want to use this in the Editor, the
Mailer, or the Terminal, you should specify that you want the AUTO
screen mode for that particular program. This will prevent it from
altering the screen mode.
Please note that if you run the Mailer in AUTO mode, you must run the
Editor and the Terminal in AUTO mode as well, if you plan to invoke
either from the Mailer (and not just from DOS). Otherwise, the Mailer
will display garbage on the screen when you return from the Terminal.
The opposite (running the Terminal in AUTO and the Mailer in 25 or
43/50) is, however, properly handled.
<+> The registered version also allows you to use an alternate mode
referred to as Custom, which allows you to specify the exact register
parameters to the INT 10H Video BIOS call. Refer to the documentation
for your video adapter for further information.
15 Message Status Bits
Message status bits determines how the Mailer will treat outbound
(outgoing) messages and how the Editor will treat locally destined
messages. The Message status menu is accessed by pressing <Alt-S> in
the Editor and is also displayed when entering a new message and
changing the subject of a message.
84
The keys listed refer to the status menu in FM.
Private <Ctrl-P>
Indicates that the message should only be read by the addressee.
Crash <Ctrl-C>
High-priority mail. Messages with crash status can never be routed or
held by a route file (see Mail routing). Crash messages do, however,
NOT override any cost restrictions for an event; they also require
that the destination system has been qualified before the Mailer will
call it.
Hold <Ctrl-H>
The hold status will force the Mailer to ignore the message unless
the destination system calls your system to pick up its mail. If the
message is destined for a point system and the boss of the point
system calls your system, the message will be given to the boss
unless the message also has Direct status.
File <Ctrl-F>
Indicates that the message has one or more files attached to it. The
files are listed in the subject (Re:) line. File attach messages can
be routed and held unless another status bit (Crash, Immediate, Hold,
etc.) prevents it. The default treatment of a file attach message is
to send it directly to its destination.
File request <Ctrl-R>
Indicates that the message is a File Request. The requested files are
listed in the subject line and may contain wild-cards characters.
File request messages can be held, but are never routed. See "File
Requests".
Update request <Ctrl-U>
Similar to a File Request, but the subject line (Re:) must contain
valid (existing) file specification(s). When the Mailer connects to
the destination system, the requested files will only be sent by the
remote if they are more recent than the matching files on your
system. See "File Requests".
Kill/sent <Ctrl-K>
Removes the message after it has been sent or picked up. If the
Kill/Sent status is not set on a message, it will be marked as sent
after it has been sent or picked up.
Trunc/sent <Ctrl-T>
Truncates the attached files to zero length after they have been sent
or picked up. This option is only valid for file attach messages.
85
>>> Note that it is nearly impossible to recover a truncated file so
use this option with caution.
Delete/sent <Ctrl-E>
Removes the attached files after they have been sent or picked up.
This option is only valid for file attach messages.
Direct <Ctrl-D>
Similar to the Crash status, with the difference that they can be
held. Messages with the Direct and Hold status combined require that
the destination system (including points) call in to pickup their
mail.
Immediate mail <Ctrl-I>
Similar to the Crash status, but messages with immediate status will
be sent at the first opportunity, ignoring all restrictions and
qualifications. If there is one or more messages with immediate
status to a system, all other messages (except those with hold
status) to that system will be added to the mail packet. USE THIS
OPTION WITH CAUTION!
Lock <Ctrl-L>
Locks a message from further access. This is done by setting the DOS
attribute to read-only and adding a special flag to the message text.
The Mailer and most other utilities will ignore message files (.MSG)
with read-only attribute.
Messages with lock status cannot be removed by any of the purge
functions and will never be sent (or picked up). The Editor can,
however, renumber a folder containing one or more messages with
locked status.
Sent <Ctrl-S>
Indicates that the message has been sent or picked up by the
addressee. Once a message has been flagged as sent, they cannot be
sent or picked up by the addressee.
No status <Ctrl-Z>
Clears all status bits. This is actually a toggle. I.e. if you press
<Ctrl-Z> once, the Editor will remove all status bits (except the
Local bit), if you press <Ctrl-Z> again, the Editor will restore the
previous status bits.
16 Mail routing
This is one of the most complex parts of FrontDoor and takes
considerable time to learn and understand. Make sure you understand
how each routing verb affects mail routing before you use it.
86
When the Mailer is brought up, it scans for any active events and
when one is found, opens the route file, ROUTE.FD, and uses it to
determine whom to send mail to, and how to send it. The route file
must be placed in the SYSTEM directory. If the timestamp of the route
file is modified, the Mailer will detect it and rescan the NetMail
folder (see "Semaphores").
Global routing commands are those that appear before any SCHEDULE
keyword in the route file. They are always used, so you can specify
routing that is identical for all your events here.
Local routing commands are those that appear between two SCHEDULE
keywords (a "Schedule block") in the route file. the Mailer
determines which schedule block to use by searching for a schedule
keyword with a tag (letter) matching the current event tag (see
"Events").
Several references are made to Hold status in this chapter. Do not
confuse this with the HOLD command. The Hold status refers to the
message status bit (see "Message Status Bits"), or where stated, to a
system's nodelist status.
The Mailer allows you to insert comments in your route file. Every
line with a semicolon as the first non-space (TAB/Space) character is
treated as a comment. While comments may seem inadequate at first
glance, it is a very useful function. Going back to a route file you
wrote five months ago may not be your definition of spending a
weekend in joy and happiness.
Addresses specified in the route file should always be fully
expressed. The * macro (implying "ALL") is supported. You can also
use any combination of nodelist flags to specify a range of systems.
The routing language is case insensitive (case does not matter).
SCRIPT, SCripT, and scRIPt are all treated as the same command.
16.1 Default routing
The Mailer has several default rules for routing that will be
used if no other rules have been defined for a specific system.
Some of the default rules cannot be overridden by routing
commands.
16.2 Message status
Messages with immediate (IMM hereafter), Crash, File/Update
Request, and Direct status will normally not be routed. They are
sent directly to the destination system, with the exception of
systems without a telephone number, as described later.
Messages with IMM or Crash status can never be held by using the
HOLD command. Messages with Crash status can, however, be
prevented from being sent by event behavior, qualification lists,
and cost restrictions.
87
Messages with Hold status will NEVER be packed into a mail
packet. They can always be picked up by the destination system
(unless they also have Lock status). Messages to points with Hold
status can and will be picked up if the Boss of the point calls
to pickup mail, unless the message also has Direct status.
Messages with IMM status will always be packed into mail packets,
overriding event restrictions. If you have a message with IMM
status, the Mailer will add all other qualifying messages to the
same system to the same mail packet.
Messages with Rcvd (read), Orphan, Lock, and/or Sent status are
ignored by the Mailer.
16.3 Host/Hub/Boss routing
Messages not otherwise prevented from being routed will by
default be sent to the destination system's Host (see "Nodelist")
if the destination system is outside your own net and to its Hub
if it is within your own net.
If you have mail for a system listed as DOWN in your nodelist
database, it will never be packed. If the system calls your
system to pick up mail, it will receive its mail.
If you have mail for a system listed as HOLD or PVT (no telephone
number) in your nodelist, the default behavior is to send the
mail via the system's Host, Hub, or Boss. If the mail to a HOLD
or PVT listed system contains file attaches, the mail packet will
by default be placed on hold for the Host/Hub, or go directly to
the Boss in the case of a point.
Messages to systems not in your nodelist (unlisted systems) will
not be Host/Hub routed by default, but they can be explicitly
routed.
Messages with Crash, IMM, or Direct status, destined for points
to which the Mailer cannot place a call directly will retain its
status (and restrictions), but the Mailer will instead assume the
point system's Boss as the destination.
16.4 Qualifying systems
Before the Mailer will send mail to a system, it must be
qualified by specifying its address, or a macro that includes its
address in a SCHEDULE block (this is not true for IMM mail as
previously described).
You can qualify a system by placing a SEND-TO command in the
global section of a route file, but this is NOT RECOMMENDED.
SEND-TO, POLL and the optional SEND-LIST after a SCHEDULE command
are the only available methods to qualify a system for mailing.
88
If the Mailer cannot find ROUTE.FD, mail to all systems will be
put on hold for the destination system to call in and pickup its
mail.
16.5 Route commands
SCHEDULE <TAG> [SEND-LIST]
Defines the start of a schedule block. All commands following a
SCHEDULE command are considered a part of the same block until
another SCHEDULE command is encountered.
TAG is a letter corresponding with the event tag, defined in
FDSETUP (see "Events"). You should only have one schedule block
per defined event tag.
The optional SEND-LIST parameter should contain the systems to
qualify for the event.
SEND-TO <SEND-LIST>
Qualifies the specified systems. This is identical to the
optional SEND-LIST after the SCHEDULE command.
HOLD <LIST>
Hold mail for the specified systems.
UNHOLD <LIST>
The opposite of HOLD. Useful if you have used the HOLD command in
the global section and want to negate the effect of those for one
or more systems.
NO-ROUTE <LIST>
Send mail to the specified systems directly. This overrides the
default routing rules. Some logics is applied to "directly" when
using the NO-ROUTE command. Systems which the Mailer cannot mail
directly will be sent "as directly as possible".
E.g. if <LIST> includes a system listed as PVT (no telephone
number), the Mailer evaluates the "NO-ROUTE" as "NO-ROUTE this
message to the system's nearest Host/Hub".
DIRECT <LIST>
Unconditionally send mail to the specified systems directly (you
can still place it on hold by using the HOLD command). No implied
logics is applied to this command, and if the Mailer cannot call
the specified systems, the resulting mail packets are placed on
hold automatically. Note that a system must still exist for this
to apply. If a system that is included in a DIRECT <LIST> does
not exist, the message will be stamped "Orphan" and not included
in a mail packet, but it can still be picked up by the
destination system.
89
ROUTE-TO <TARGET> <LIST>
Route mail (excluding file attach messages) for the specified
systems via TARGET. This automatically implies "NO-ROUTE
<TARGET>", i.e. the target system's mail will not be routed
through another system, even if so previously stated.
HOST-ROUTE <LIST>
Route messages, not otherwise prevented from being routed, for
the specified systems through their Host system.
HUB-ROUTE <LIST>
Route messages, not otherwise prevented from being routed, for
the specified systems through their Hub system.
ROUTE-FILES <TARGET> <LIST>
Route file attach messages (and normal mail) for the specified
systems through TARGET. This automatically implies "NO-ROUTE
<TARGET>", i.e. the target system's mail will not be routed
through another system, even if so previously stated.
You should ask the SysOp of the TARGET system if he allows you to
route files through his system before using this command.
POLL <LIST>
Force the Mailer to call the specified systems even if there is
no other mail destined for them. This does not effect the routing
of existing mail destined for the specified systems. The POLL
command unconditionally qualifies a system for mailing. Each
system in LIST will only be called once. If an event is
restarted, the Mailer will not call systems that it has already
polled.
EXCEPT <LIST>
Specifies an exception to the LIST of the previously used
command.
FORWARD-FOR <LIST>
Tells the Mailer that you allow the specified systems to send
mail (excluding file attach messages) through your system. Note
that this does not place any restrictions of the destination of
the forwarded mail.
FORWARD-TO <LIST>
Tells the Mailer that you allow mail (excluding file attach
messages) to be forwarded through your system ONLY if it is
destined to any of the specified systems. This is a more secure
alternative to the FORWARD-FOR command.
90
FILES-FOR <LIST>
Identical to FORWARD-FOR, but for file attach messages.
FILES-TO <LIST>
Identical to FORWARD-TO, but for file attach messages.
DENY <LIST>
Allows you to prevent the specified systems from picking up
waiting mail. The Mailer will still accept incoming mail from the
specified systems. This can be used to prevent local (or other
low-cost) systems from picking up their mail in national mail
events, etc.
SCRIPT <SCRIPT FILE> <LIST>
Tells the Mailer to use the SCRIPT FILE when calling the
specified systems instead of the telephone number (if any) in
your nodelist database. Script files are explained in a separate
section.
NO-SCRIPT <LIST>
Prevents the Mailer from using default script handling for the
specified systems. Script files are explained in a separate
section.
16.6 LIST specifications
You can use a variety of formats to specify a list of systems for
a routing command. A few follows:
* All systems
2:* All systems in zone two
2:270/* All systems in zone two, net 270.
2:270/1 2:270/1 and all points under it.
2:270/1.0 2:270/1 but no points under it.
2:270/1.1 2:270/1.1.
MYNET All systems in your own net. Note that the result
of this format depends on which AKA FD is
operating under. This is normally your primary
AKA.
91
16.7 Using nodelist flags
When you specify system LISTs to a routing command, you can use
nodelist flags in place of address information. Any combination
of nodelist flags can be used. You can mix flags and address
information as you wish. A few follows:
%HST %CM All systems with HST or CM in their nodelist
entry.
%!HST All systems that do not have HST in their
nodelist entry. The ! character negates the
meaning of a flag.
%!HST %!CM All systems that do not have HST _or_ CM in
their nodelist entry.
%!HST %CSP All systems that do not have HST in their
nodelist entry and all systems that have CSP
in their nodelist entry.
1:1/5 %HST %CM 1:1/5 and all other systems with HST or CM in
their nodelist entry.
16.8 File routing/forwarding
FILES-FOR and FILES-TO will mark all in-transit (not destined for
your system) file attach messages as Del/Sent (see "Message
Status Bits"). If you receive the same file destined for two
different systems, the file will not be removed until it has been
sent to (or picked up by) both systems.
16.9 Message forwarding
When the Mailer unpacks received mail packets, it will always
mark messages as in-transit if they are not destined for your
system (including any AKAs). These messages can be forwarded by
using FORWARD-FOR and FORWARD-TO, but the Mailer will under NO
circumstances forward mail, that has not been entered or modified
locally, automatically to systems unless one or both of these two
commands are used.
16.10 Multiple zones
If you are operating under more than one AKA listed in different
zones, it is important to explicitly specify a zone for address
information in the route file.
92
16.11 Examples
Here are a few examples of route files and how to use route
commands:
schedule @ *
This is the most simple of route files and qualifies all systems
for mailing. It will force the Mailer to use its default routing
rules for mail to all systems.
schedule @ *
route-to 2:512/1 2:*
hold 2:512/1 %!CM %!HST
This qualifies all systems for mailing, routes all mail destined
for zone two through 2:512/1, and places the mail for 2:512/1
(including the routed mail) and any systems, that do not have the
CM or HST flags in their nodelist entry, on hold.
schedule @ MYNET
This qualifies all systems in your own net and uses default
routing.
schedule @
send-to 1:* 2:* 3:*
route-to 2:512/1 2:*
except 2:201/329
2:201/130
route-to 3:632/348 3:*
deny MYNET
This qualifies all systems in zone one, two, and three. Routes
all mail destined for zone two through 2:512/1 except for mail
destined 2:201/329 and 2:201/130, routes all mail destined for
zone three through 3:632/348, and prevents systems in your own
net from picking up their mail.
schedule B *
hold *
except 2:*
no-route 2:*
This qualifies all systems, holds all mail except mail destined
for systems in zone two, and sends mail destined for zone two
directly to its destination.
hold *
schedule D MYNET
unhold MYNET
schedule A 1:*
unhold 1:*
93
This holds all mail by default (the HOLD command is in the global
section).
Schedule D sends mail to all systems in your own net.
Schedule A sends mail to all systems in zone one.
16.12 Dynamic packing
Whenever a mail event is started, the Mailer scans the messages
in the NetMail folder and possible packets are built. Messages
that do not qualify to be processed will not be packed (but kept
in the internal list). If a system calls in, the Mailer will scan
the list stored in memory and create a mail packet "on the fly"
and immediately send it to the calling system. So mail is always
available, 24 hours/day.
This means that your system does not have to be in a specific
event for other systems to pickup their mail. Note that you can
prevent systems from picking up their mail with the DENY command
and by modifying an event's behavior.
16.13 Regarding points
Points of other systems are always treated as their boss system
unless you explicitly specify the boss or a point. To ONLY
reference a boss system, without referencing its points, use .0
(eg. 2:270/17.0).
If you have the telephone number for another system's points, the
will be treated just like any other node. Ie. you can send mail
to them directly.
16.14 Order of evaluation
The route file is evaluated (processed) from top to bottom.
Because of this, it is wise to put the "global" (affecting all
systems) first, followed by the exceptions. E.g.
route-to 2:512/1 *
no-route 2:270/17
will result in all mail being routed via 2:512/1, except mail for
2:270/17, which is sent directly to 2:270/17.
The only route command that cannot be overridden in this manner
is the ROUTE-FILES command. It is therefore required that you use
the EXCEPT keyword to override a ROUTE-FILES command where
necessary. E.g.
route-files 2:512/1 *
except 2:270/17
94
will result in all file attaches messages being sent via 2:512/1,
except file attach messages destined for 2:207/17, which are sent
directly to 2:270/17. The only other way to override the effects
of a ROUTE-FILES command is to use the DIRECT command.
16.15 TARGET vs. qualification
Note that only actual <TARGET> systems, and systems which you
have told the Mailer to send mail directly to, or systems not
otherwise included in default routing, need to be qualified.
route-to 2:512/1 *
no-route 2:270/17
schedule @ 2:512/1 2:270/17
Note that even if you have mail for a non-qualified system (i.e.
a system other than 2:512/1 and 2:270/17), it would be routed to
2:512/1, and qualified for sending (via 2:512/1), using the above
scenario.
16.16 Restrictions
A <TARGET> system cannot contain a point address.
You can not route mail destined for your own systems via another
system.
16.17 Macros
MYZONE All systems in your zone.
MYNET All systems in your net.
MYPOINTS All points under your system.
16.18 Supported nodelist flags
All past, present, and future nodelist flags are supported. There
is, however, one case that is not dealt with automatically. The
FidoNet nodelist contains several "user flags" of which only the
first flag is preceded by a single 'U', e.g. UISDN,REC and
UREC,ISDN. To specify such a flag in the route file requires that
you specify the actual string since the Mailer requires an exact
match. E.g. "%ISDN" would NOT match "UISDN". To be on the safe
side, it is recommended that you specify user flags with and
without the preceding 'U' - "%ISDN %UISDN". Note that the meaning
of flags can be negated by placing a '!' character in front of
them, eg. %!HST.
>>> All FrontDoor systems should have the "XA" flag in their
nodelist entry.
95
17 EMSI and IEMSI
EMSI (EMSC-001 and FSC-0056) or "Electronic Mail Standard
Identification" is a handshake method developed by Joaquim
Homrighausen and Chris Irwin (author of D'Bridge). It provides
features and flexibility that other handshake methods, such as FTS-1
and FTS-6 (YooHoo), do not offer.
The two major advantages of the EMSI handshake method is the ability
to pickup mail for all your AKAs in one call, and unlimited expansion
of the data (handshake packets) exchanged when a session is
negotiated. I will not go into any technical details about EMSI here,
I will, however, describe the handling of the multiple AKAs.
The EMSI handshake is supported by FrontDoor, FrontDoor APX,
TrapDoor, BinkleyTerm, and D'Bridge. EMSI does not interfere with
other handshake protocols such as FTS-1 and FTS-6.
17.1 Passwords
If you have established or wish to establish a session level
password for a certain system, you must make sure that you have
entered all AKAs of that system in the Security Manager. All
entries must have the same password.
For example, let us assume you want to establish a session level
password with 1:135/142 which is also 26:1305/142. You should add
both 1:135/142 and 26:1305/142 in the security manager and use
the same password for both entries.
17.2 Mail
Using the same example, if you have mail for both 1:135/142 and
26:1305/142, all mail (for both addresses) would be delivered
during the same session. This is true for both inbound and
outbound connections.
If you know that a system is EMSI capable and you have regular
mail traffic with more than one of its AKAs, you can HOLD mail
for the system's other AKAs and only allow the Mailer (FD) to
call one of the addresses. When the session is established, all
of the remote system's AKAs are processed.
This probably sounds more confusing than it really is. So to make
a long story short, make sure you have the "Present all AKAs to
remote" option enabled (Mailer>Miscellaneous) and play it by ear.
17.3 IEMSI
IEMSI is similar to the EMSI handshake protocol, with the
exception that it deals with the handshake between a terminal
program (such as the one found in FrontDoor) and an on-line
service, such as a BBS.
96
18 Script language
The script language provides an alternative method of calling a
system (instead of calling it directly with the telephone number
listed in your nodelist). A script file is used where you have to, or
prefer to, connect to another system indirectly. I.e. you will not be
calling it by dialing its number directly. This could be through X.25
or PC Pursuit to name a few.
The script file must be a plain vanilla ASCII file. A semicolon (;)
may be used as a comment character, forcing the Mailer to ignore
everything following the semicolon on the same line. The Mailer is
not case sensitive when interpreting the script file.
The route file (ROUTE.FD) can be used to specify that a script should
be used for one or more nodes by entering:
SCRIPT <SCRIPT FILE> <LIST>
(see Mail routing). The command may be global or local to a specific
event's schedule block. If you are using PC Pursuit, you can use a
generic script file for all "PC Pursuitable" nodes. See PCP SCRIPTS.
18.1 What can I do with it?
The script language consists of a number of commands that allows
you to send characters to the modem, wait for responses from the
modem or the remote system/network that you are using, and
trigger different actions depending on the responses you get.
The versatility of the script language is further enhanced by the
use of so-called labels to execute different parts of the script
depending on a specific situation. The script language can be
seen as a simple programming language for controlling the way FD
or the Terminal makes a call.
18.2 Commands
SEND <STRING>
Sends a series of characters to the modem or the remote system.
Everything following the SEND command on the same line will be
sent. Control characters may be entered using mnemonics, e.g.
<CR>. In addition, <CR> (carriage return) may be sent by using
the pipe (|) symbol. The string will be sent exactly as entered,
with no case conversion.
DIAL <NUMBER>
Sends NUMBER, preceded by the dial command specified in FDSETUP's
modem section. Control characters may be entered in the same
manner as with the SEND command.
97
SETPORT <BAUD> <DATABITS> <STOPBITS> <PARITY>
Sets the communications port to the specified parameters. BAUD
can be any value supported by the hardware between 300 and 9600
baud. At no time will the baudrate be set to a higher value than
the highest supported speed of the destination system, or the
baudrate of the outbound node in a PC Pursuit script. DATABITS is
7 or 8. STOPBITS is 1 or 2. PARITY is NONE, ODD or EVEN. In
addition, a value of -1 means that the previous setting for that
parameter should be retained.
PROVOKE <STRING>
Keeps sending STRING with an interval of one second, until any
character is received from the remote system, or until a timeout
occurs (see TIMERSET), or until the script interrupted by the
user. Control characters may be entered in the same manner as
with the SEND command.
TIMERSET <SECONDS>
Sets the timer for fatal timeouts while waiting to receive
something from the remote system. The default is 120 seconds (two
minutes). The maximum value is 300 seconds (five minutes), and
the minimum is 0.
DEBUG <ON|OFF>
Sets debug mode on or off. In debug mode, all characters received
while waiting for one or more strings will be displayed. When you
are not using debug mode, only the string that matched a pattern
will be displayed. Similarly, in debug mode all strings sent to
the modem/remote system will be displayed, whereas the Mailer
will only display "Sending string" when not using debug mode. It
is recommended that you enable debug mode while developing and
testing a script.
WAIT <SECONDS>
Makes the script wait for SECONDS seconds before continuing.
WAITFOR <STRING>[|<STRING>|<STRING>..]
Forces the script to wait for one or more specified strings or
until a timeout occurs (see TIMERSET). Each string must be
separated with a pipe (|) character. Control characters may be
entered in the same manner as with the SEND command. Of the
specified strings, only the first will signify success, the other
strings will immediately terminate the script with failed status.
The string comparison is case sensitive, and requires an exact
match.
98
CASE / ENDCASE
Starts and ends a CASE statement, respectively. CASE is a more
flexible variety of WAITFOR. Each line after CASE must start with
a string that the script should wait for, followed by a colon and
one or more script commands, or a label jump directive (see
LABELS).
If the string consists of more than one word, it must specified
between quote characters ("). The CASE statement is ended with
the command ENDCASE on a separate line.
When a matching string has been received from the modem or the
remote system, the command on the same line will be executed. If
the command consists of a label jump instruction, the script will
continue from the specified label position. If it is one or more
script commands, they will be executed, and the script will
continue from the line following the ENDCASE statement, unless
the command terminates the script (see SESSION and FAIL).
The string comparison is case sensitive, and requires an exact
match. A short example follows.
CASE ; Comments:
CONNECT : session ; connect
BUSY : >redial
"NO CARRIER": >redial
VOICE : fail
@NOCARRIER : fail ; carrier lost
@DEFAULT : fail ; timeout
ENDCASE
@NOCARRIER
Tests the presence of carrier in a CASE statement.
@DEFAULT
May be used to specify a default course of action if a timeout
occurs in a CASE statement.
SESSION
Terminates the script with success status, leading to a mail
session if the script was invoked from the Mailer. It is NOT
necessary to have a SESSION command in script files used to
connect to another system in the Terminal. The SESSION command is
only used to establish mail sessions.
FAIL
Terminates the script with failed status. No mail session will be
initiated.
99
PURGEIN
Purges the inbound buffer, getting rid of any pending characters.
PURGEOUT
Purges the outbound buffer, getting rid of any pending
characters.
RETRYCOUNT <RETRIES>
Provides a means of incrementing and checking a predefined retry
count variable. If the retry count exceeds RETRIES, the script is
terminated with failed status, otherwise the count is incremented
with 1. The retry count does not include the first attempt.
CLEARCOUNT
Clears the predefined retry count variable, resetting it to 0.
MAX2400 <COMMANDS>
MAX1200 <COMMANDS>
Commands following on the same line will only be executed if the
max baudrate for the session is 1200/2400. The maximum baudrate
for a session is calculated as the maximum baudrate supported by
the remote system, by the outbound node (if using PCP), or by
your own modem, whichever is lowest.
Eg. MAX2400 setport 2400 -1 -1 -1
MAX1200 setport 1200 -1 -1 -1
@OUTBOUND
Used to insert the name of an outbound PC Pursuit node in a
string. The contents of @OUTBOUND is undefined if used in any
other script than PCP.SCR.
E.g. send C @OUTBOUND,ABC12345<CR>
@LOCALNUM
Used to insert the local telephone number in a PC Pursuit script.
The contents of @LOCALNUM is undefined if used in any other
script than PCP.SCR.
E.g. send ATDT@LOCALNUM<CR>
<C> @SYSTEMNUM
Used to insert the telephone number of the system being called as
if the Mailer or Terminal (if dialing a system listed in the
nodelist) would have dialed the number.
100
ENDNODE
Terminates a "node block". See NODE BLOCK.
<C> UPLOAD <PROTOCOL> <FILESPEC>
Transmits the files matching FILESPEC to the remote, using the
PROTOCOL transfer protocol (X=Xmodem, T=Telink, S=SEAlink,
Z=Zmodem). FILESPEC may include wild-cards characters for all
protocols.
E.g. upload Z C:\FILES\FD*.LZH
<C> DOWNLOAD <PROTOCOL> <PATH>
Receives one or more files from the remote, using the PROTOCOL
transfer protocol (X=Xmodem, T=Telink, S=SEAlink, Z=Zmodem). PATH
must be a complete filename for Xmodem transfers and a valid
directory for Zmodem, SEAlink, and Telink transfers.
E.g. download Z C:\INFILES\
download X C:\INFILES\FUN.LZH
<C> DISCONNECT
Unconditionally terminates a call (if any) from within a script.
Script execution will resume as soon as the carrier (CD) signal
has been lost; the script function lowers DTR to disconnect.
<C> IFBAD
<line to execute>
Executes the command(s) listed on <line to execute> (which is the
line following "IFBAD") if an UPLOAD or DOWNLOAD command failed.
<C> SENDBREAK
Transmits a short BREAK signal to the modem.
<C> LONGBREAK
Transmits a long BREAK signal to the modem.
<C> LINESPEED <BPS>
Sets the baudrate the Mailer and Terminal use to determine
transfer times, etc. to <BPS> BPS.
<C> LOG <Symbol> <String>
Adds <String> to the Mailer's log using the <Symbol> loglevel.
101
18.3 Labels
A label is used to define a position in the script, so that it
may be used as a jump destination. The label can consist of any
word, starting with a letter from A to Z, except the above script
commands, and must be preceded by a colon.
At the position in the script where you want to execute a jump to
the label, you enter the label name preceded by a greater than
sign (>).
E.g. ..
..
:redial
send ATDT@LOCALNUM<CR>
CASE
CONNECT : session
BUSY : >redial
@default : fail
ENDCASE
18.4 Node block
A node block is a special type of label. It starts with a node
number preceded by a colon. All commands from the first line to
the ENDNODE statement, that ends the node block, will only be
executed if you are currently calling the specified node.
E.g. ..
..
:270/17 ; start of node block
send ATZ<CR>
ENDNODE ; end of node block
18.5 PC Pursuit
You can use a generic script for calling all "PC Pursuitable"
nodes, taking advantage of the specific PCP commands @OUTBOUND
and @LOCALNUM. This requires that the script file is named
PCP.SCR and is placed in the SYSTEM directory. You must also
compile the nodelist with the file PCP.DAT, containing a list of
all "PC Pursuitable" exchanges, present in the NODELIST
directory.
If you have followed these steps, the PCP script file will be
used automatically when the Mailer detects that a node is "PC
Pursuitable". You will probably want to prevent the Mailer from
using the PCP script in the daytime on weekdays. A special route
command, NO-SCRIPT, exists specifically for this purpose. For
further information, see Mail routing.
102
18.6 How do I update PCP.DAT?
The file PCP.DAT is a somewhat modified version of the file
provided by Telenet's BBS. We take no responsibilities whatsoever
regarding the contents of the PCP.DAT file supplied with
FrontDoor. To update it, you must issue CONNECT PURSUIT from
PCP's command prompt and log-on to their BBS. The file that you
want to download is called EXCHANGE.TXT (or EXCHANGE.ARC). Should
you update this file, you MUST make sure that your files follows
the same format as the file supplied with FrontDoor.
18.7 MNEMONICS
The following mnemonics may be used to enter control characters
in the script, both for sending and receiving. They can be used
with the following commands: SEND, DIAL, PROVOKE, WAITFOR, and
CASE.
ASCII MNEMONIC : ASCII MNEMONIC
--------------------+----------------------
0 <NUL> : 17 <DC1>
1 <SOH> : 18 <DC2>
2 <STX> : 19 <DC3>
3 <ETX> : 20 <DC4>
4 <EOT> : 21 <NAK>
5 <ENQ> : 22 <SYN>
6 <ACK> : 23 <ETB>
7 <BEL> : 24 <CAN>
8 <BS> : 25 <EM>
9 <HT> : 26 <SUB>
10 <LF> : 27 <ESC>
11 <VT> : 28 <FS>
12 <FF> : 29 <GS>
13 <CR> : 30 <RS>
14 <SO> : 31 <US>
15 <SI> : 32 <SP>
16 <DLE> :
--------------------+----------------------
19 FDSERVER <+>
The Mailer has a function referred to as FDSERVER. It can be used to
perform functions on your system from a remote site, such as moving
and copying files, etc. FDSERVER is a very powerful function and the
examples given in this chapter are only some of the things you can do
with it.
FDSERVER is activated by specifying a password in FDSETUP. FDSERVER
requests will be ignored if no password has been specified in
FDSETUP.
FDSERVER requests are processed after a mail session has been
completed and the call has been terminated, so everything you specify
in request message is processed off-line.
103
19.1 What is a FDSERVER request?
A FDSERVER request is a message, addressed to FDSERVER (case does
not matter) on your system, with commands. Think of it as a
remote, but controlled, DOS shell. You can run almost any program
and perform any DOS function from a FDSERVER request. The
FDSERVER function has some limitations, however.
o You cannot use the DOS command ECHO in a FDSERVER
request.
o Programs that require local keyboard input should not be
executed from a FDSERVER request since these program(s)
will just sit and wait for keyboard input.
o FDSERVER request messages must NOT be compressed
(ARCmail, etc.). The function is only triggered if the
Mailer unpacks the request message.
o Batch (.BAT) file labels are not supported.
19.2 Request message
Each line of the message is considered a command and blank lines
are ignored. When FDSERVER has executed all commands found in the
message, it will change drive and directory to where it was
before processing your request and return to the Mailer.
19.2.1 Internal commands
Lines beginning with a % character are internal FDSERVER
commands.
%logall
Will create one line in the log file for each command
that was executed along with the status (err: or exe:).
%nologer
Normally, all commands that generated an errorlevel will
be logged, this can be disabled with this command.
%store
After a request is processed, it will be deleted by
default. This can be disabled by putting this command in
the message which will force FDSERVER to mark the
messages as received.
104
19.3 Using it
You are sitting in front of your computer at home, working with a
report or something similar and find that you need some files
from the office machine.
Assuming that these files contain information that is very
sensitive or confidential, and even though you have the option to
protect your file requests with a password, you may still not
want to have the files semi-accessible. This is where you can use
FDSERVER.
The directories and file names used in this example were thought
up and does not necessarily match the setup on your machine.
Create a message addressed to FDSERVER on the node you want to
call and send it.
By: joaquim homrighausen, JoHo's Home (2:270/17.1)
To: fdserver, Use your illusion (2:270/17)
Re: password
----------------------------------------------------
%nologerr
cd \TEMP
copy C:\LOTUS\THA*.SPS
arj a THA THA*.SPS
erase *.SPS
copy THA.ARJ C:\REQUEST\FORNOW
erase THA.ARJ
The server function will read the message and execute each line.
The next step would be to create a new server request containing
the following:
By: joaquim homrighausen, JoHo's Home (2:270/17.1)
To: fdserver, Use your illusion (2:270/17)
Re: password
----------------------------------------------------
%nologerr
erase C:\REQUEST\FORNOW\THA.ARJ
And send it along with a File Request for THA.ARJ. The Mailer
will process the File Request first, and when the mail session
has been completed, the newly created server request will be
processed by FDSERVER.
19.4 Keeping calls to a minimum
You could avoid the extra phone call in the example with the
request if you have a robot utility such as XRobot and create a
file attach with the files you need so the Mailer will call you
back.
105
19.5 Security
If you do not need to use FDSERVER, Do not define a password for
it in FDSETUP. Since FDSERVER is a VERY powerful function, the
results could be disastrous if someone got hold of your FDSERVER
password.
20 Service requests
Service requests is a very powerful function of FrontDoor. It allows
you to use the Mailer as a front-end to databases, to make on-line
inquiries etc. without having to manually call the system with a
Terminal program.
20.1 Service requests vs FDSERVER
The difference between a service request and a FDSERVER request
is that they are processed while two systems are connected. This
has the drawback of being slightly more expensive, but it offers
a much greater flexibility than the FDSERVER function.
Consider this. You have a program on your system that allows
people to search for data in a database of files and then get a
list of all the new files, you have named the service request
WHATSNEW.
Your system receives a file request for WHATSNEW and the Mailer
invokes the program SEARCH.EXE, defined as the program to run for
WHATSNEW. When SEARCH terminates, the Mailer will send the file
NEWFILES.LST, created by SEARCH, to the remote system.
20.2 Setting up
Service requests are defined in the ALIAS file (where you define
alias file names for file requests). The format of a service
request definition looks like this:
<NAME> ><PROGRAM> <PARAMETERS> ^<+ or - path name>
E.g.
WHATSNEW >SEARCH.EXE findit =A =T ^-C:\SERVICE\RESULT\*.TXT
Service name
NAME (case does not matter) is what the remote system should
request to invoke the service request.
Program
>PROGRAM is the program that should be invoked when the Mailer
receives a request for NAME. The > character is required and
tells FD it is a service request and not an alias definition.
There should be no spaces between the > and PROGRAM.
106
The extension of PROGRAM is important. The Mailer can execute
batch (.BAT) files as a result of a service request, but it must
do it through COMMAND.COM. So it has to know what type of file
(program) it is that you are executing.
Parameters
You can pass any parameters to the program. The only restriction
is (as with DOS) that they do not exceed a length of 128
characters and none of them starts with the ^ (see below)
character.
There are several macros that you can specify as parameters.
These macros are described in detail in the FrontDoor Developer's
Kit (FDDEV).
20.3 ^ - + ?
The ^ character defines the beginning of a filemask that the
Mailer should send after the service request has been completed.
If no ^ definition has been made, the Mailer will not send any
files as the result of a service request.
The plus (+) means that the Mailer should NOT remove the files
once they have been transmitted.
The minus (-) means that the Mailer SHOULD remove the files once
they have been transmitted. This also means that the files will
be removed even if they could not be sent (carrier lost, etc).
The question mark (?) means that the Mailer should ONLY remove
the files once they have been SUCCESSFULLY transmitted. This
means that if a session fails after transmitting three files,
only those three files will be removed and the remaining left
intact.
The path name is a file specification, it may include wildcard (?
and *) characters. The Mailer will send all matching files.
20.4 Security
Since service requests are built on the concept of File Requests,
they are protected the same way a File Requests is protected. To
setup a password, you have to use the Request Manager in FDSETUP
and define a password for the service request name.
20.5 A word of wisdom
Service Requests should be used with extreme caution. It is
recommended that you have a full understanding of what a service
request actually does before you attempt to use it.
107
You should also keep in mind that the requesting system is
waiting at the other end for the Mailer to start sending files.
So keep it short and sweet.
21 Global command-line switches
Support for these switches is included in all programs in FrontDoor,
except where otherwise stated. All command line parameters must be
preceded by either a forward slash (/) or a dash (-). Command line
parameters are case insensitive (case does not matter) except where
otherwise stated. FD is the Mailer, FM is the Editor, and FDNC is the
Nodelist Compiler.
AUTOVIDEO FM/FD <C>
Overrides the current video mode setting for the Editor and Mailer
respectively.
C FDSETUP
Forces color mode
EMSIDEBUG FD
Enables extensive debug information when the Mailer negotiates a mail
session using the EMSI protocol.
FOLDER FM <C>
Forces the Folder list to be displayed as soon as the Editor is
invoked. This is identical to pressing <Alt-F> from the Editor's main
menu.
FOLDERSCAN FM <C>
Similar to FOLDER (above) but emulates the behavior of <Ctrl-F>.
FORCECOMMIT FD <C>
Forces the Mailer to flush the DOS disk buffers every time it writes
data to disk while receiving a file. The use for this is to increase
the integrity of received data, in case of a power failure. You can
use it independent of the NOCOMMIT parameter, because the two are not
related.
FORCEDPMI All
Disables FrontDoor's autodetection of type of multitasker, and force
time-slicing according to the DPMI-specification. OS/2 and Windows
support DPMI.
108
FORCEINT28 All
Force FrontDoor to issue INT 28H calls when it is idle. This is
useful in such multi-tasking environments which support this method
for applications to give up time slices (most notably older TSR
programs written to run in the background).
INTL FM
Forces the Editor to always insert the ^aINTL kludge line in newly
created NetMail messages. The Editor will, by default, only insert
INTL information if the destination system of the message is located
in a different zone than that of the originating address (your) used
to create the message, or when a different originating address than
your primary AKA is used.
L:<pwd> FD
Locks the keyboard with the specified password directly from DOS.
This has the same effect as using the Lock, <Alt-L>, function from
the Mailer's main menu.
LOGINTRO FD
Enables more detailed information to be logged during the initial
phase of a mail session negotiation.
M FDSETUP
Forces monochrome mode
M FD
Forces the Mailer into Mail mode directly from DOS. This switch was
added to allow you to override the Terminal-only setting in FDSETUP.
MSGSURVEY FM <C>
Forces the Message Survey function to be selected as soon as the
Editor is invoked. This is identical to pressing <Alt-F9> from the
Editor's main menu.
NOCANSES FD <C>
Forces the Mailer to ignore the FDCANSES.n semaphore.
NOCOMMIT All
Disables use of DOS 3.3 commit() call.
NODASH FD
Forces the Mailer and Terminal to strip dash (-) characters from
telephone numbers before sending them to the modem. This does not
affect how telephone numbers are displayed on screen or logged to
disk.
109
NODUPBCK FDSETUP
Disables the duplicate Hudson Message Base board check that FDSETUP
normally performs when you edit and add Folders in the Folder
manager.
NOEKBD All
Prevents FrontDoor from using extended (AT-style) keyboard BIOS
calls.
NOEMS All
Disables use of LIM/EMS memory for overlay file buffers. This switch
does not affect whether or not EMS/XMS memory is used when (if)
swapping.
NOEMSI FD
Disables support for the FSC-0056 (EMSI) session protocol. This means
that the Mailer will only support FTS-1 and FTS-6 sessions, unless
otherwise restricted.
NOFCB FD
Disables the use of the File Control Block (FCB) delete function when
the Mailer shall remove files in the Packet directory. Its intended
use is for dealing with special incompatibilities, such as with the
"DELDIR" setting of OS/2 2.0. It is likely to impose a decrease in
speed when the Mailer is processing mail packets.
NOFTSC1 FD
Disables support for the FTS-1 session protocol, effectively making
the Mailer non-FidoNet compliant. This means that the Mailer will
only support FTS-6 and EMSI sessions, unless otherwise restricted.
>>> Public (listed as non-PVT in the FidoNet nodelist) FidoNet
systems should use this option with CAUTION since by using it,
you may be in violation FidoNet policy.
NOICA FM/FD
Prevents the Editor and the Mailer from using the ICA (intra-
application communications BIOS area). Some combinations of hardware
and software (notably in some Gateway brand of PCs with specific BIOS
revisions) have problems with the support of ICA-enabled
applications.
NOISCR FM
Forces the Editor to treat a SoftCR (ASCII 141) character as any
other printable character. The default for the Editor is to strip
these when reading and writing message from/to disk.
110
NOLOCK FM
Disables Hudson Message Base locking support in the Editor. Do not
use this unless absolutely necessary.
NOMDM FD
Forces the Mailer to ignore information listed in MODEM.FD.
NOMULD All
Prevents FrontDoor from attempting to detect a multi-tasking
environment, such as DESQview and PC-MOS/386.
NORAWEXTD FD
Forces the Terminal to send the normal (white) cursor key sequences
when the gray cursor keys are used in raw keyboard mode (Scroll Lock
is enabled). This may be required by some "doorway" programs that do
not support extended keyboard codes.
NORES All
Disables use of internal DOS pathname resolution calls. This is
required under PC-MOS/386 and some LAN environments.
NORESYNC FD
Disables support for the RESYNC extension to the SEAlink protocol.
NOSHADOW All
Disables window shadows.
NOSLO FD
Disables support for the Overdrive protocol option (SLO) in SEAlink.
SLO is by default only active during "error free" connections (/ARQ,
/MNP, /LAPM, etc.) and for link speeds above 2400 BPS.
NOUNPACK FD
Forces the Mailer to ignore received mail packets (files with .PKT
extension). This assumes that you have an external utility to unpack
NetMail packets. Do not use this unless you absolutely need it.
NOYOOHOO FD
Disables support for the FTS-6 (YooHoo) session protocol. This means
that the Mailer will only support FTS-1 and EMSI sessions, unless
otherwise restricted.
111
NOZAP FD
Disables support for the Zmodem protocol during mail sessions
negotiated using the FTS-6 (YooHoo) session protocol. This
effectively means that the Mailer will only establish FTS-6 sessions
using the DietIFNA protocol option. This does not affect sessions
negotiated using EMSI.
ONLINE FD <C>
Forces the Terminal to not initialize the modem when it is started.
RDEBUG FD
Enables debug output from the mail routing handler in the Mailer.
This is quite useful when debugging your ROUTE.FD file.
S FD
Forces the Mailer to ignore any forced events it may have missed. The
Mailer will by default execute all pending external events when it is
brought up. This switch is useful if you have performed system
maintenance for several hours and do not want overdue forced events
to be executed.
SESSONDCD FD <C>
Forces the Mailer to immediately attempt to initiate a mail session
when the DCD (carrier) signal goes high.
TERM FD
Forces the Mailer into Terminal mode directly from DOS. Once you exit
the Terminal, you will be returned to DOS.
X<1..255> FD <C>
Forces the Mailer to terminate with the specified errorlevel as soon
as there is no more outbound calls to make.
21.1 A word of wisdom
Please be aware that some of the previously described command
line switches completely alter the way FrontDoor acts and may
make it incompatible with other software and/or some
environments.
Use the switches with caution and when in doubt, try to test the
effects of the switch in a local environment or between your own
and a friend's system before you leave the Mailer to answer your
telephone unattended.
112
22 Environment variables
Several environment variables affect how FrontDoor operates. It is
assumed that you are familiar with what and environment variable is
and how to set/remove one.
22.1 FDOPT
All of the "Global command line switches" except -C and -M can
also be specified by including them in the FDOPT environment
variable. To include more than one option, separate them by a
comma, e.g.
SET FDOPT=NOISCR,NOSHADOW
22.2 FDSWAP
Overrides the "Swapping" path, defined under Global > Filenames
in FDSETUP, e.g.
SET FDSWAP=D:\TEMPDIR\
22.3 POINTNET
See "Nodelist and the Nodelist Compiler".
<C> 22.4 FMOVR and FDOVR
Allows you to specify a complete path where the Editor and the
Mailer should look for their overlay (.OVR) files. Useful when
multiple copies of either program are being used (e.g. multi-line
environment).
22.5 TZUTC
Allows you to specify your geographical time zone's offset to UTC
(GMT) time. E.g.
SET TZUTC=[-|+]hhmm
The plus-sign (+) is optional, meaning that the use of SET
TZUTC=0100 and SET TZUTC=+0100 would both indicate that your time
zone is Paris (Central European Time), which is one hour east of
GMT (Greenwich Mean Time). The Editor will insert the TZUTC
kludge if the environment variable is present. The Mailer will
present the TZUTC-setting during EMSI handshakes, <C> and as a
kludge when creating return receipts.
If you periodically change your system clock according to
"summer/winter time", you will need to adjust the setting of
TZUTC as well. Here follows a list of some of the world's time
zones:
113
Zone Offset Name
------------------------------------------------
AHST -1000 Alaska-Hawaii Standard Time
HDT -0900 Hawaii Daylight Time
PST -0800 Pacific Standard Time
PDT -0700 Pacific Daylight Time
MST -0700 Mountain Standard Time
MDT -0600 Mountain Daylight Time
CST -0600 Central Standard Time
CDT -0500 Central Daylight Time
EST -0500 Eastern Standard Time
EDT -0400 Eastern Daylight Time
WAT -0100 West Africa Time
GMT +0000 Greenwich Mean Time
UTC +0000 Universal Time
CET +0100 Central Europe Time
BST +0100 British Summer Time
CEST +0200 Central Europe Summer Time
EET +0200 Eastern European Time
WAST +0700 West Australian Time
WADT +0800 West Australian Daylight Time
CCT +0800 China Coast Time
JST +0900 Japan Standard Time
CAST +0930 Central Australian Standard Time
EAST +1000 East Australian Standard Time
CADT +1030 Central Australian Daylight Time
EADT +1100 East Australian Daylight Time
NZST +1200 New Zealand Standard Time
NZDT +1300 New Zealand Daylight Time
23 Semaphore files
FrontDoor can be controlled by using so called semaphore files. Both
the Mailer and the Editor periodically scan for certain file names in
the SYSTEM directory, and if found, performs a task such as
rescanning the contents of the NetMail folder, exits to DOS, prevents
human callers, and more.
<C> The commercial version furthermore allows you to specify a
separate semaphore directory (see FDSETUP > Global > Filenames) to
allow several copies of the Editor and the Mailer to use the same
semaphore files.
The Mailer uses the lower right hand corner of its main screen to
indicate that some semaphore files are present. FD is the Mailer and
FM is the Editor.
FMRESCAN.NOW FM
Forces the Editor to rebuild its internal list of messages in the
NetMail folder.
114
FMFREEZE.n FM <C>
Used to freeze task(s) running the Editor. The Editor will search for
this semaphore once a minute, when updating the on-screen clock. When
found, the keyboard is frozen, the databases for nodelist and
messages are closed, and the Editor will check every twenty seconds
to see if the semaphore has disappeared. FMFREEZE.ALL has a similar
function but affects all currently active Editors rather than just
the specified task.
FMNEW???.n FM <C>
Created by the the Editor to indicate that new messages (including
replies) have been entered as NetMail, conference mail, and local
mail respectively. The classification of messages is defined by the
settings under Manager > Folders in FDSetup, of the corresponding
folder(s) where one or more new messages have been saved. You can
control support of these semaphores in FDSetup, under the Editor >
Miscellaneous menu. Messages saved with the Lock attribute are not
considered as new. The actual names are FMNEWCNF.n, FMNEWNET.n, and
FMNEWLOC.n respectively.
FDRESCAN.NOW FD
Forces the Mailer to discard all mail packets from the packet
directory and rescan the contents of the NetMail folder before
rebuilding the packets.
FDINSESS.nnn FD/FM <C>
The Mailer creates this file whenever a mail session is initiated,
and when it is dialing a system, attempting to establish a mail
session. If the Editor detects this file, it will not let you
renumber the NetMail folder. "nnn" is the task number (0-255).
FDINEXIT.nnn FD
The Mailer creates this file whenever a human caller is detected and
passed onto a BBS or other interactive service. When the Mailer is
restarted, it compares the timestamp of FDINEXIT.nnn with the
timestamp of FDRESCAN.NOW, and if they do not match, a complete
rescan (see above) is performed. "nnn" is the task number (0-255). In
the shareware version, this file is not task aware, and is always
called "FDINEXIT.NOW".
FDFREEZE.n FD <C>
Used to freeze task(s) running the Mailer. The Mailer will search for
this semaphore once a minute. When found, the keyboard is frozen, the
nodelist database and the log file is closed, and the Mailer will
check every twenty seconds to see if the semaphore has disappeared.
FDFREEZE.ALL has a similar function but affects all currently active
Mailers rather than just the specified task.
115
FDNOUSER.NOW FD
Forces the Mailer to refuse human callers. This has the same effect
as setting the "Human callers" option, under FD's "Your profile"
menu, to "NO". The visual indicator for this semaphore file is "NU".
FDNOSCAN.NOW FD
Forces the Mailer to ignore FDRESCAN.NOW.
FDNOEXIT.NOW FD
Prevents the Mailer from exiting because of received mail. This has
the same effect as setting the "Exit on mail" option, under the "Your
profile" menu, to "NO". The visual indicator for this semaphore file
is "NE".
NODIAL.FD FD
While this is not a semaphore file per se, it triggers the display of
a visual indicator, "UD".
FDEXIT.nnn FD
Forces the Mailer to unconditionally exit with the errorlevel "nnn".
Before it exits, the Mailer removes the file.
FDRENUM.nnn FD/FM <C>
The Editor creates this file whenever you press <Alt-B> to renumber
the NetMail folder. When the Mailer detects this file, it will not
place any outgoing calls until it can no longer be found. This
prevents the Mailer from initiating an outbound session while the
Editor is renumbering the contents of the NetMail folder. "nnn" is
the task number (0-255).
ROUTE.FD FD
While this is not a semaphore file per se, it is used to determine if
the NetMail folder has to be rescanned (see above). If the timestamp
of this file has changed since the Mailer last checked it, a rescan
is forced.
FDALIVE.n FD <C>
Used by the Mailer to indicate that it is still "alive". The
timestamp is updated every few minutes even when the Mailer has been
frozen with the FDFREEZE semaphore, or when the Terminal is active.
It provides a simple method to monitor whether or not the Mailer is
operating as it should. When the Mailer terminates, or a DOS shell is
invoked, the semaphore is removed.
116
FDSCAN.n FD <C>
Used to indicate that the Mailer is processing the (primary) NetMail
folder. While this semaphore is present, certain functions in the
primary NetMail folder (such as renumber and change of destination)
are disabled in any task running the Editor.
FDINTERM.n FD
Created and present for the duration when the Terminal is running. In
the shareware version, this file is named FDINTERM.NOW.
FDCANSES.n FD <C>
Used to force the Mailer to terminate the currently active session.
The semaphore is checked for between files being sent/received. If
the Mailer finds the file, it removes the file and terminates the
session. The Mailer can be told to ignore this file by using the
NOCANSES option as described above.
24 Batch files
The Mailer will, in most cases, be run from a DOS batch (.BAT) file.
When it terminates, it will return certain errorlevels that you can
"trap" for in your batch file.
24.1 Errorlevels
1 Internal error
2 External error - missing files, paths, etc.
3 Insufficient available disk space (less than 32
KB)
4 (reserved)
5 Unable to initialize modem
6 Incorrect FOSSIL version
7 FOSSIL not loaded or detected
8 FrontDoor already loaded, issue EXIT to return
9 (reserved)
10 User break
11 - 30 (reserved)
31 - 255 User definable errorlevels
If you invoke the Terminal from DOS by running FD /TERM, it will
always terminate with an errorlevel of 10 (User break), the same
applies when you have specified "Terminal-only" in FDSETUP.
24.2 Categories
The various errorlevels can be organized into four basic
categories:
117
Mail received
When mail is received, you can choose to exit to the batch
file to run external mail processing utilities, such as
TosScan, etc.
User break/errors
When you press <Alt-Q> from the Mailer's main menu or when
errors occur.
BBS calls
If you are running a BBS under the Mailer, it must exit with
an errorlevel indicating the baudrate of the call. The line
is still active when the Mailer exits to the batch file, the
BBS software is loaded, and the caller will be able to access
the BBS.
External events
The errorlevels defined in FDSETUP's event manager.
24.3 Loading BBS software
There are two methods that can be used to invoke BBS software
when the Mailer detects an interactive call. The first uses
different batch file labels for the various baudrates and the
second one uses the same label for the various baudrates. The
second method relies on the "Create .BAT file" option in FDSETUP
(under Mailer > Errorlevels).
24.4 Different labels
@echo off
rem --- We end up here after every BBS call
:loop
C:
CD \FD
FD
rem --- Check errorlevels returned by the Mailer
if errorlevel 200 goto b9600
if errorlevel 199 goto b2400
if errorlevel 198 goto b1200
if errorlevel 197 goto b300
if errorlevel 100 goto mailIN
if errorlevel 10 goto userBRK
if errorlevel 1 goto FDerror
:mailIN
rem --- Process possible echomail, etc.
118
tosscan toss
tsutil link -m
goto loop
:b9600
Load BBS software for incoming call at 9600 bps
goto loop
:b2400
Load BBS software for incoming call at 2400 bps
goto loop
..
..
:userBRK
cls
@echo User break.
goto done
:FDerror
@echo Mailer returned an error (1-9)
:done
While this option works just fine for a environment where it is
not critical that the BBS software knows about upcoming events
etc. it is somewhat limited.
24.5 Same label
@echo off
rem --- We end up here after every BBS call
:loop
C:
CD \FD
FD
rem --- Check errorlevels returned by the Mailer
if errorlevel 200 goto bbsCALL
if errorlevel 199 goto bbsCALL
if errorlevel 198 goto bbsCALL
if errorlevel 197 goto bbsCALL
if errorlevel 100 goto mailIN
if errorlevel 10 goto userBRK
if errorlevel 1 goto FDerror
:mailIN
rem --- Process possible echomail, etc.
tosscan toss
119
tsutil link -m
goto loop
:bbsCALL
rem --- Load DOBBS.BAT, created by the Mailer if
rem the "Create .BAT file" option is enabled.
dobbs
:userBRK
cls
@echo User break.
goto done
:FDerror
@echo Mailer returned an error (1-9)
:done
24.6 DOBBS.BAT
This is the batch file created by the Mailer when you have the
"Create .BAT file" option enabled. It contains the speed at which
the call came in, the COM port, number of minutes left until the
next event and possibly a string indicating ARQ, MNP etc.
<+> Additionally, the registered version can include data following
the ring signal (DFRS), i.e. CALLER*ID information.
For a call coming in at 16800 BPS with ARQ, with 30 minutes left
until the next non-user event, on COM port 1, and with no DFRS
the DOBBS.BAT file would contain:
exebbs 16800 1 30 0 /ARQ N/A
For a call coming in at 2400 BPS, with two hours left until the
next non-user event, on COM port 1, the DOBBS.BAT file would
contain:
exebbs 2400 1 120 0 /NONE N/A
The parameter between the remaining time and possible extended
modem result code information (e.g. /ARQ, /MNP, etc.) is the task
number and is always zero for the shareware version. If the modem
did not send any extended result code information (other than a
"CONNECT nnnn"), the Mailer will insert /NONE.
24.7 EXEBBS.BAT
This is the file you have to create. It should handle everything
required for the BBS software you are running, including
exporting mail after users have logged off, etc. The last
statement of your EXEBBS.BAT file should be the name of the big
(main) batch file. Here is a sample of an EXEBBS.BAT file:
coolBBS -b%1%5 -p%2 -t%3
120
if errorlevel 200 goto newmail
if errorlevel 40 goto fatal
run
:newmail
cls
@echo User entered echomail, let's send it!
tosscan scan
run
:fatal
cls
@echo A fatal error has occurred in coolBBS
Since DOBBS.BAT calls EXEBBS.BAT with various information, it
can be used to pass parameters to the BBS software. The
result of the above EXEBBS.BAT file would expand to:
coolBBS -b9600/ARQ -p1 -t120
If a BBS call came in at 9600, the COM port is one, the
number of minutes till the next non-user event is 120 and the
optional (%5) string contained /ARQ.
The text RUN, refers to the original (main) batch file, in
which we bring the Mailer back up again. When the BBS
software (coolBBS in the above examples) terminates,
EXEBBS.BAT will trap two errorlevels and then invoke
RUN(.BAT) again.
24.8 Flow (batch files)
Complicated? Here is the actual file flow between RUN, DOBBS and
EXEBBS:
+-> RUN.BAT Loads the Mailer and performs all EchoMail
: : and error handling. When an interactive (BBS)
: : call is detected, it loads DOBBS.BAT,
^ V created by the Mailer.
^ :
: :
: DOBBS.BAT Created by the Mailer. DOBBS calls EXEBBS.BAT
: : file with the parameters relevant for the
: : incoming call.
^ V
^ :
: :
: EXEBBS.BAT Called by DOBBS.BAT with the above described
: : parameters. Loads the BBS software, processes
^ : newly created mail (if any), and finally
^ V returns to RUN.BAT.
: :
+--<--+
121
25 Multi-tasking
FrontDoor can be used together with most multi-tasking programs. It
has been tested with DESQview, PC-MOS/386, OS/2 1.3, 2.0, and 2.1 DOS
Box, DoubleDOS, Multilink, Windows, Windows NT, and Taskview. It will
automatically detect most multi-tasking software.
25.1 NS16550
If you are running FrontDoor under a multi-tasker or in a LAN
environment, I suggest you replace your 8250 or 16450 UART chip
with a NS16550AN or NS16550AFN. These are available from several
electronics outfits for somewhere between USD 17 and USD 23.
The 16550 family of UARTs have internal buffering (FIFO) and will
improve performance in multi-tasking and LAN environments. Both
BNU and X00 has direct support for the 16550 family and can be
used without modifying your command-line parameters when loading
them.
25.2 DESQview
FrontDoor will request a virtual screen buffer from DV and write
to it. The result is very fast and very well behaved screen
writes. Here's a sample DESQview configuration:
Keys to Use on Open Menu FD
Memory Size (in K) 270
Options:
Writes text directly to screen N
Displays graphics information N
Virtualize text/graphics (Y,N,T) N
Uses serial ports (Y,N,1,2) 2
Requires floppy diskette N
Advanced Options:
System Memory (in K) 0
Maximum Program Memory Size (in K) <empty>
Script Buffer Size 0
Maximum Expanded Memory Size (in K) 0
Text Pages 1
Graphics Pages 0
Initial Mode <empty>
Interrupts 00 to FF
Maximum Height 25
Starting Height 25
Starting Row 1
Maximum Width 80
Starting Width 80
Starting Column 1
122
Close on exit (Y,N,blank) N
Uses its own colors Y
Allow Close Window command Y
Runs in background (Y,N,blank) Y
Uses math coprocessor N
Keyboard conflict (0-4) 0
Share CPU when foreground Y
Share EGA when foreground/zoomed Y
Can be swapped out (Y,N,blank) N
Protection level (0-3) 0
25.3 DoubleDOS
Smart multi-tasking software allocates a virtual screen buffer
for each task. Applications can then ask the multi-tasking
software where it should write and the multi-tasker handles the
screen updates. DoubleDOS 5.0 uses a different method.
Every time you switch tasks from the keyboard, the screen-buffers
change. So there is no easy way for the software running under
DoubleDOS to detect this. In DoubleDOS 5.00, there are two
options that allows you to run FrontDoor under DoubleDOS just
fine. You MUST run FrontDoor in the TOP section for the two
methods below to work.
25.3.1 DISPLAY=TEXT
If your system has a MCGA, CGA, EGA or VGA card installed,
there is extra memory available on those cards for graphics,
etc. DoubleDOS can use some of that memory for each of its
screen buffers. To enable this, add DISPLAY=TEXT to your
DDCONFIG.SYS file.
25.3.2 REFRESH
If you have a text-only adapter (MDA) there is most likely no
extra memory available on the card. Add REFRESH by itself on
a line to your DDCONFIG.SYS file. This will tell DoubleDOS to
repaint the screen if the other task is bleeding through.
25.3.3 X00 and DoubleDOS
When using FrontDoor, X00.SYS, and DoubleDOS, do not assign
the COM ports in DDCONFIG.SYS. If you have problems with your
clock, try the DEFER option in X00.
Make sure you replace ANSI.SYS with DBLDANSI.SYS.
The BOTTOM partition should initialize before the TOP partition.
In other words, if you are loading FrontDoor in the BOTTOM
partition, try to delay the initialization of the TOP partition.
123
25.4 Multilink
I would personally not recommend anyone using FrontDoor with
Multilink. I have never successfully executed any program under
Multilink for longer periods of time than momentarily.
26 Converting from other mail systems
If you were using SEAdog or D'Bridge before you started using
FrontDoor, you should have little trouble converting to FrontDoor.
The routing and message handling used by these two mail systems is
very similar to the way things are done with FrontDoor.
If you are converting from BinkleyTerm, Opus, or Dutchie, however,
there are a few things you should know and make sure you have done
before you install FrontDoor.
The main difference between FrontDoor and BinkleyTerm or Opus is that
FrontDoor does not use oMMM, i.e. a static message packer. I see the
oMMM approach as a black hole from which there is no return. This is
not true in some cases and there are advantages of using oMMM type
packers instead of the method used by FrontDoor.
oMMM will create static bundles, where each system has a control file
that tells the Mailer what files and messages to send to what
systems. FrontDoor will NOT recognize oMMM type bundles (packets) so
before you fully convert to FrontDoor, you must make sure that all
the oMMM type mail is sent before you convert to FrontDoor.
You can use FrontDoor to send the remaining oMMM type mail by
attaching the files manually with FrontDoor's Editor or a robot
utility such as XRobot, but you will need a utility with which you
can determine which file belongs to which system before you can do
this. So it might be easier for you to tell BinkleyTerm or Opus to
send its remaining mail before you do the conversion.
27 Help systems
For a list of help systems that can help you with problems that you
encounter with the shareware versions, please refer to the file
FDHELPnn.TXT that is distributed in the FidoNet SDSFRONT file
conference. If all else fails, contact either Bruce Bodger on
1:170/400@fidonet, or Mats Wallin on 2:201/329@fidonet. The official
FidoNet support conference for the shareware version is FDECHO.
Please note that the FidoNet help systems are not responsible for
giving support to users of the commercial version of FrontDoor.
Likewise, commercial suppliers of FrontDoor are not responsible for
giving support to users of the shareware version of FrontDoor.
If you have purchased the software with the SysOp discount, you may,
however, post your questions in FDECHO. For shareware registration
information, please refer to the REGINFO.DOC file enclosed in the
distribution archive.
124
28 Sample (PCP) script
; PCP script for FrontDoor version 2.11
; Eric Larson, 1:2605/620.0, 8/11/91
; Modified from script supplied in FD 1.99 documentation
;
; Joaquim Homrighausen makes no claims of the accuracy, nor
; does he take any responsibility for the information provided
; in this file.
;
; You must modify this script in at least 3 places:
;
; 1: Indial Number
; 2: PCP ID Number
; 3: PCP Password
;
; You may also want to modify the script for your modem
; or types of systems you call. See notes in script.
; For further information, see PCP documentation on
; Net Exchange BBS. To connect to the Net Exchange, type
; "C PURSUIT" at the Telenet @ prompt.
;
debug ON
setport 2400 ; Redundant if you have locked your FOSSIL
; If you have a 1200 indial :-(, use 1200
; here and change the hunt-confirm sequence
; to @ wait 1 <CR>
;
; Users with MNP modems should disable MNP as the buffering
; combined with PCP's packet latency will cause block position
; errors during error recovery. For HST owners, use:
;
send AT&M0<CR>
waitfor OK
;
; Others should adjust the above for their modem
; non-buffered modem owners should comment out the
; above two lines.
;
;----------------------------------
; Your Indial Phone Number Here
;----------------------------------
;
send ATDT4795372<CR>
; send ATDT4795445<CR> ; official number
; 6406 5776 5355 5372 ; alternates
;
; If you are having difficulty with your indial line, call
; PCP customer service and they may be able to give you
; an alternate number that works better.
125
case
CONNECT : >whackit
RING<CR> : fail
BUSY<CR> : fail
"NO " : fail
@default : fail
endcase
:whackit ; Attempt to "wake-up" PCP
purgein ; Telenet recommends at least
wait 2 ; a 200 ms pause between
send @ ; characters in the hunt-confirm sequence
wait 1 ; change the @ to <CR> if you call
send D ; a 1200 bps indial
wait 1
send <CR>
waitfor TERMINAL=
send D3<CR> ; Preferred terminal type
waitfor @
;--------------------------
; Your ID and Password Here
;--------------------------
:outdial ; Dial PCP city
purgein
retrycount 5
send C @OUTBOUND,YOURID471E<CR> ; Your ID Here
waitfor PASSWORD
send KKKKKK<CR> ; Your Password Here
CASE
CONNECT : >local ; Gotcha!
BUSY : >outdial
"NOT " : fail
@nocarrier : fail
@default : fail
ENDCASE
:local ; Initialize Outdial
purgein
send <CR>
wait 1
send I<CR>
send ATZ|
timerset 15
waitfor OK
send @|
waitfor @
;
; Setup PADS
;
; Note - if you are calling a SEAdog system,
; change the SET and RST 5:1 and 12:1 to 5:0 and 12:0
; as SEAlink is not transparent to software flow control
126
;
; If you only call WaZoo systems, use 5:1 and 12:1 for
; fewer errors and greater reliability.
;
send SET?<sp>1:0,7:8<CR>
;
waitfor @
;
; send RST?5:1,12:1<CR>
;
; waitfor @
send CONT<CR>
send ATH0Z<CR>
waitfor OK|IDLE
send <ENQ><CR> ; Turn on RV Mode
waitfor *
purgein
timerset 50
wait 2
send D@LOCALNUM<CR>
purgein
case
ANS : >landing
ONLINE : >landing
BUSY : fail
FAILED : fail
"NO CARRIER" : fail
"NO DIAL TONE" : fail
"NO DTR" : fail
VOICE : fail
@default : fail
@nocarrier : fail
endcase
:landing ; Landing on Pluto
wait 7 ; wait for PCP messages to clear
purgein
session
;end of file "pcp.scr"
29 Commercial inquiries
For any use other than that allowed by the licence agreement, you
must obtain the commercial version of FrontDoor. The commercial
version of FrontDoor include numerous features not found in the
shareware version. Eligible users of the shareware version of
FrontDoor may also benefit from the commercial features, and can
enjoy a special "SysOp Discount" at the time of this writing.
127
The easiest way to receive up-to-date information of features,
availability, pricing and a list of local distributors and resellers
of the commercial version, is to file request FDINFO from one of the
following main distribution sites:
Online Communications, Inc. Telephone: +1 207 941 1110
22 State Street Modem: +1 207 990 3511
Bangor Maine 04401 Fax: +1 207 990 2293
USA Email: 1:132/300@fidonet
ComDas GmbH Telephone: +49 911 970 780
attn: Holger von Heissen Modem: +49 911 970 7821
Hornschuchpromenade 28 Fax: +49 911 707 104
D-90762 Fuerth Email: 2:247/1808@fidonet
Germany
FDINFO is also available from 2:270/17@fidonet.
The FDINFO package contains information about various FrontDoor-
related utilities, such as TosScan, the conference mail package.
30 Developer notes
A separate package with information regarding FrontDoor is
distributed under the name FDDEV. It contains structures and
technical information directed towards authors of FrontDoor
utilities. If you are planning on writing a utility with explicit
support for FrontDoor, make sure you grab a copy of the FDDEV
package.
31 Technical specifications
FrontDoor was written using Zortech C++ 3.1, TASM 2.0, and Turbo
Pascal 6.0. It uses direct-to-screen writes, and properly supports
virtual screen environments, such as the one provided by DESQview.
FrontDoor's FTSC product code is 0x0C (or 12 decimal).
The proper nodelist flag for file requests for systems using
FrontDoor is XA.
FrontDoor's Editor allows you to share the Hudson Message Base
together with other programs, such as RemoteAccess, following the
RemoteAccess/FrontDoor HMB sharing specifications.
32 Credits
This list, as most lists, started out in 1986 with a few names. It
has since grown to unrealistic proportions and instead of running the
risk of forgetting to mention someone, I'll take the cheap way out
and say thanks to everyone who has contributed to making FrontDoor
what it is today. You know who you are.
I do wish to point out a "few" people though..
128
.. the beta crew, the help nodes, all you people who keep pestering
me with NetMail about things that you want to see in FrontDoor, Ron
Dwight, Peter Garben (1111), all the people who turned up at EuroCon
'93, M.E., C.A., G.A., THA/2, Lill Homrig, Senior, the JAM crew..
And last, but not least..
..Tom Jennings, Felix Kasza, Bob Hartman, Chris Irwin, Chuck
Forsberg, Henk Wevers, Randy Bush, Ray Gwinn, Thom Henderson, Vince
Perriello, Wynn Wagner III, Mike Ratledge, Rick Moore, G. Adam
Stanislav, Doug Boone, Ralf Brown, jim nutt, Maximilian Hantsch,
Alexander Holy, Scott Dudley.
"It ain't over till the fat lady sings"
129
Batch files 117 NOLOCK 111
BBS 118 NOMDM 111
CALLER*ID 120 NOMULD 111
Create .BAT file 16, NORAWEXTD 111
118, 120 NORES 111
DOBBS.BAT 120 NORESYNC 111
Errorlevels 16, 47, 117 NOSHADOW 111
EXEBBS.BAT 120 NOSLO 111
FDEXIT semaphore 116 NOUNPACK 111
FDNOEXIT semaphore 116 NOYOOHOO 111
Flow 121 NOZAP 112
Mail received 118 ONLINE 112
Terminal 117 RDEBUG 112
TZUTC 113 S (Mailer) 112
X<1..255> 112 SESSONDCD 112
BBS TERM 21, 68, 112, 117
DOBBS.BAT 120 X<1..255> 112
EXEBBS.BAT 120 Commercial inquiries 127
Human callers (mailer CONFIG.SYS
profile) 54 BUFFERS= 4
Loading 13, 118 FILES= 4
Mail only 12 Credits 128
Maximus 83 Display
RemoteAccess 83 "Mail" 14
Software 4 "NE" 116
Carbon copies 66 "UD" 116
Blind 67 <C> and <+> 3
Hidden 67 AUTO 84
Command-line parameters 108 AUTOVIDEO 108
AUTOVIDEO 108 C command-line parameter
C (FDNC) 34 108
C (FDSETUP) 108 Clear screen 72
DOBBS.BAT 120 Clock 14
EMSIDEBUG 108 Colors 15, 20
F (FDNC) 34 CRT environments 84
FOLDER 108 Custom 84
FOLDERSCAN 108 DESQview 122
FORCECOMMIT 108 DoubleDOS 123
FORCEDPMI 108 EGA/VGA 3, 84
FORCEINT28 109 M command-line parameter
INTL 109 109
L:<pwd> 109 Margin 17
LOGINTRO 109 Monochrome mode 10
M (FDSETUP) 10, 109 NODASH 109
M (Mailer) 12, 109 NOISCR 110
MSGSURVEY 109 NOSHADOW 111
NOCANSES 109, 117 Program notice 62
NOCOMMIT 109 Screen blanking 10
NODASH 109 Screen flickers 9
NODUPBCK (FDSETUP) 110 Semaphore indicators 56
NOEKBD 110 Show hard CRs 17
NOEMS 110 Timestamp in activity
NOEMSI 110 window 14
NOFCB 110 Wrap around 22
NOFTSC1 110 Environment variables 113
NOICA 110 FD 4, 5
NOISCR 110 FDOPT 113
130
FDOVR 113 Available directories
FDSWAP 9, 113 80
FMOVR 113 Event restrictions 82
POINTNET 37, 113 Hold (do not send) 49
TZUTC 113 Limiting 28, 79, 81
Events 46, 49 Manual (mailer) 53
Allow file requests 49 Message status 85
Answer inbound calls 50 Pickup 49
BBS 48 Protecting 82
Behavior 47 Request processor 83
Days 46 Response message 80
Errorlevel 47 Service requests 106
Event manager 46 Update request 85
Exit when mail received Update requests 79
12 XRobot 78
External 46, 48 Files
File requests 82 AUTOEXEC.BAT 4
Forced 48 Banner 8
Global event (@) 46, 50 Carbon copy lists 67
Hold (do not send) file CONFIG.SYS 4
attaches 49 DOBBS.BAT 120, 121
Inactive 48, 50 EVENT.FD 24
Length 47 EXEBBS.BAT 120, 121
Mail 46 FD.EXE 4
Max.cost 47 FD.OVR 4
Min.cost 47 FD.SYS 5
Modifier 46 FDNC.EXE 4
Overlapping 51 FDNET.PVT 32
Skipping forced 112 FDNODE.CTL 30, 34, 36
Start 47 FDPOINT.PVT 35, 36
Tag 46, 87, 89 FDSETUP.EXE 4
Fax FM.EXE 4
Editor 20 FM.OVR 4
Mailer 17, 42 FOLDER.FD 24
View from Editor 58 Hudson Message Base 111
FDDEV 128 Inbound 7
FDNODE.CTL 30 LASTREAD.BBS 8
COST 34 Log 8
DIAL 32 MODEM.FD 111
PHONE 32 MSG Base 8
POINTLIST 30, 36 MSGHDR.BBS 8
PVTLIST 31 MSGIDX.BBS 8
SWEPULSE 32 MSGINFO.BBS 8
Telephone number MSGTOIDX.BBS 8
translation 9 MSGTXT.BBS 8
USE ZONE 32 NAMES.FD 77
FDSERVER 103 NetMail messages 7
%logall 104 No BBS 8
%nologer 104 NODIAL.FD 56, 116
%store 104 NOLOCK 111
Example 105 Overlays 110, 113
Limitations 104 Packets 7
Password 14 PASSWORD.FD 24
Security 106 REQUEST.FD 24
File requests 78 ROUTE.FD 112, 116
ALIAS files 80, 106 SETUP.FD 5
Allow 49 Swapping 9
131
FOSSIL TSRs (DOS shell) 84
BNU 44, 122 Messages
Deactivating 69 Attached files 85
FOSSIL not loaded or Blind Carbon Copies 67
detected 117 Carbon copies 66
Incorrect FOSSIL version Confirmation Receipt
117 Request 18
Lock port 39 Continuous tagging 64
OpusComm 44 Crash 85
OS/2 45 Crossposting 68
Requirement 3 Default status 18
SIO/VX00 45 Delete/sent 86
VFD 45 Destination 76
X00 45, 122, 123 Direct 86
Handshake Domains 7
DietIFNA 28, 112 Echo info (origin lines)
EMSI 28, 112 60
EMSIDEBUG 108 Entering 63
FTS-1 28 Extended information 62
FTS-6 28 File request 85
LOGINTRO 109 Folders 24
NOEMSI 110 Forward (manual) 57
NOFTSC1 110 Forwarding 90, 92
non-FidoNet compliant Hard CRs 17
110 Hold 85
NOYOOHOO 111 Immediate mail 48, 86
NOZAP 112 Import 59
Order of priority 28 INTL 109
Security 27 Kill/sent 85
Hardware Lock 86
Extended keyboard 3, 10 Margin 17
Keypad modes 74 No status 86
Lock keyboard 52, 109 NOISCR 110
Modem 38 Origin lines 19, 25,
NOEKBD 110 26, 61
NOICA 110 Print (Editor) 61
PC keyboards 74 Private 85
Raw mode (keyboard) 73 Request response 80
Use "fastkey" 9 Return Receipt Requests
Macros 13
Address 77 Sent 86
Editor 19, 62, 65 Status 84
Mailer 15, 52 Storage 7
Terminal 23, 69, 73 Survey 63
UUCP 77 Trunc/sent 85
Mailer Update requests 85
Converting from other UUCP 77
124 Zonegates 19
Memory Modem 38
EMS/XMS 3, 83, 110 Answer control 42, 50,
LIM/EMS 110 54
Minimum requirement 3 Call progress 56
NOEMS 110 CALLER*ID 42
overlay 110 CCITT V.23 39
Scroll-back buffer 21 Command strings 40
Swapping 16, 17, 20, CONNECT| 40
83, 110 CTS/RTS 3
132
Custom message 40 Multiple nodelists 31
DCD forced 38 Name lookups 76
DCD mask 40 Net 29
Dialing 12, 13, 39, 41, Node 29
47, 49, 56 Point 30
Disconnect 52 Pointlist 35
DTE interface 3, 38 POINTNET 37
DTR 39 Points 30, 35, 37
DTR forced 38 Region 29
Fax 42 Remote info 63
FOSSIL requirement 3, Sharing 38
44 Storage 8
Hardware 38 Zone 29
Hiding dial info 15 Protocol 28
Initialization 41 Auto-Zmodem 22, 71
Locked port 38, 39 EMSI 96
Maximum baudrate 39 IEMSI 69, 71, 96
Messages 3, 38, 40 NORESYNC 111
Modem manager 42, 43 NOSLO 111
Multi-tasking 122 SEAlink 111
NODASH 109 Transmit ASCII file 69
NOMDM 111 Zmodem 112
ONLINE 112 Routing 86, 112
OS/2 45 Allow nodes to pickup
RING| 40 waiting mail 49
Send BREAK 72 Commands 89
Serial port 39 comments in route file
SESSONDCD 112 87
Unable to initialize Debugging 112
117 Default rules 87
Multi-line 113 Dynamic 94
Multi-tasking Event tag 46
DESQview 122 Examples 93
DoubleDOS 123 File routing 92
FIFO 122 High priority (crash)
FILES= 4 mail only 48
FORCEDPMI 108 Hold (do not send) file
FORCEINT28 109 attaches 49
Hardware 122 Host/Hub/Boss 88
Multilink 124 Macros 95
NOFCB 110 Max.cost 47
NOMULD 111 Min.cost 47
NORES 111 Multiple zones 92
OS/2 45, 108, 122 Nodelist flags 92, 95
PC-MOS/386 111, 122 Order of evaluation 94
Semaphores 9 points 94
Windows 108, 122 Scripts 97
Nodelist Send to CM systems only
Address browsing 76 50
Compiler 52 Send to non-CM systems
Compiling 30 only 50
Dial (Terminal) 72 Scripts 97
FDNODE.CTL 36 Commands 97
FidoNet 5 Labels 102
Flags 34 Mnemonics 103
Hosts and hubs 30 Node block 102
Modem manager 43 PC Pursuit 102, 103, 125
133
Semaphores 114
"NE" 116
"UD" 116
Directory 9
FDALIVE.n 116
FDCANSES.n 117
FDEXIT.nnn 116
FDFREEZE.ALL 115
FDFREEZE.n 115
FDINEXIT.nnn 115
FDINSESS.nnn 115
FDINTERM.n 117
FDNOEXIT.NOW 116
FDNOSCAN.NOW 116
FDNOUSER.NOW 116
FDRENUM.nnn 116
FDRESCAN.NOW 115
FDSCAN.n 117
FMFREEZE.n 115
FMNEW???.n 115
FMRESCAN.NOW 114
Indicators 56
MailExit 9
New mail 18
NODIAL.FD 116
ROUTE.FD 116
Service requests
ALIAS file 106
Parameters 107
Service requests 106
Support
Help systems 124
Technical specifications
128
FDDEV 83, 107, 128
FSC-0056 96, 110
FTSC 128
HMB sharing 128
nodelist flag 95, 128
NOLOCK 111
Utilities
TosScan 5, 118, 121,
128
XRobot 78, 124
134